packages feed

amazonka-kinesisanalyticsv2 (empty) → 2.0

raw patch · 237 files changed

+27116/−0 lines, 237 filesdep +amazonka-coredep +amazonka-kinesisanalyticsv2dep +amazonka-test

Dependencies added: amazonka-core, amazonka-kinesisanalyticsv2, 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 Kinesis Analytics SDK++* [Version](#version)+* [Description](#description)+* [Contribute](#contribute)+* [Licence](#licence)+++## Version+ +`2.0` - Derived from API version @2018-05-23@ of the AWS service descriptions, licensed under Apache 2.0.++## Description++Documentation is available via [Hackage](http://hackage.haskell.org/package/amazonka-kinesisanalyticsv2)+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.KinesisAnalyticsV2](http://hackage.haskell.org/package/amazonka-kinesisanalyticsv2/docs/Amazonka-KinesisAnalyticsV2.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-kinesisanalyticsv2` 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-kinesisanalyticsv2.cabal view
@@ -0,0 +1,246 @@+cabal-version:      2.2+name:               amazonka-kinesisanalyticsv2+version:            2.0+synopsis:           Amazon Kinesis Analytics SDK.+homepage:           https://github.com/brendanhay/amazonka+bug-reports:        https://github.com/brendanhay/amazonka/issues+license:            MPL-2.0+license-file:       LICENSE+author:             Brendan Hay+maintainer:+  Brendan Hay <brendan.g.hay+amazonka@gmail.com>, Jack Kelly <jack@jackkelly.name>++copyright:          Copyright (c) 2013-2023 Brendan Hay+category:           AWS+build-type:         Simple+extra-source-files:+  fixture/*.proto+  fixture/*.yaml+  README.md+  src/.gitkeep++description:+  Derived from API version @2018-05-23@ 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.KinesisAnalyticsV2.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.KinesisAnalyticsV2" 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-kinesisanalyticsv2++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.KinesisAnalyticsV2+    Amazonka.KinesisAnalyticsV2.AddApplicationCloudWatchLoggingOption+    Amazonka.KinesisAnalyticsV2.AddApplicationInput+    Amazonka.KinesisAnalyticsV2.AddApplicationInputProcessingConfiguration+    Amazonka.KinesisAnalyticsV2.AddApplicationOutput+    Amazonka.KinesisAnalyticsV2.AddApplicationReferenceDataSource+    Amazonka.KinesisAnalyticsV2.AddApplicationVpcConfiguration+    Amazonka.KinesisAnalyticsV2.CreateApplication+    Amazonka.KinesisAnalyticsV2.CreateApplicationPresignedUrl+    Amazonka.KinesisAnalyticsV2.CreateApplicationSnapshot+    Amazonka.KinesisAnalyticsV2.DeleteApplication+    Amazonka.KinesisAnalyticsV2.DeleteApplicationCloudWatchLoggingOption+    Amazonka.KinesisAnalyticsV2.DeleteApplicationInputProcessingConfiguration+    Amazonka.KinesisAnalyticsV2.DeleteApplicationOutput+    Amazonka.KinesisAnalyticsV2.DeleteApplicationReferenceDataSource+    Amazonka.KinesisAnalyticsV2.DeleteApplicationSnapshot+    Amazonka.KinesisAnalyticsV2.DeleteApplicationVpcConfiguration+    Amazonka.KinesisAnalyticsV2.DescribeApplication+    Amazonka.KinesisAnalyticsV2.DescribeApplicationSnapshot+    Amazonka.KinesisAnalyticsV2.DescribeApplicationVersion+    Amazonka.KinesisAnalyticsV2.DiscoverInputSchema+    Amazonka.KinesisAnalyticsV2.Lens+    Amazonka.KinesisAnalyticsV2.ListApplications+    Amazonka.KinesisAnalyticsV2.ListApplicationSnapshots+    Amazonka.KinesisAnalyticsV2.ListApplicationVersions+    Amazonka.KinesisAnalyticsV2.ListTagsForResource+    Amazonka.KinesisAnalyticsV2.RollbackApplication+    Amazonka.KinesisAnalyticsV2.StartApplication+    Amazonka.KinesisAnalyticsV2.StopApplication+    Amazonka.KinesisAnalyticsV2.TagResource+    Amazonka.KinesisAnalyticsV2.Types+    Amazonka.KinesisAnalyticsV2.Types.ApplicationCodeConfiguration+    Amazonka.KinesisAnalyticsV2.Types.ApplicationCodeConfigurationDescription+    Amazonka.KinesisAnalyticsV2.Types.ApplicationCodeConfigurationUpdate+    Amazonka.KinesisAnalyticsV2.Types.ApplicationConfiguration+    Amazonka.KinesisAnalyticsV2.Types.ApplicationConfigurationDescription+    Amazonka.KinesisAnalyticsV2.Types.ApplicationConfigurationUpdate+    Amazonka.KinesisAnalyticsV2.Types.ApplicationDetail+    Amazonka.KinesisAnalyticsV2.Types.ApplicationMaintenanceConfigurationDescription+    Amazonka.KinesisAnalyticsV2.Types.ApplicationMaintenanceConfigurationUpdate+    Amazonka.KinesisAnalyticsV2.Types.ApplicationMode+    Amazonka.KinesisAnalyticsV2.Types.ApplicationRestoreConfiguration+    Amazonka.KinesisAnalyticsV2.Types.ApplicationRestoreType+    Amazonka.KinesisAnalyticsV2.Types.ApplicationSnapshotConfiguration+    Amazonka.KinesisAnalyticsV2.Types.ApplicationSnapshotConfigurationDescription+    Amazonka.KinesisAnalyticsV2.Types.ApplicationSnapshotConfigurationUpdate+    Amazonka.KinesisAnalyticsV2.Types.ApplicationStatus+    Amazonka.KinesisAnalyticsV2.Types.ApplicationSummary+    Amazonka.KinesisAnalyticsV2.Types.ApplicationVersionSummary+    Amazonka.KinesisAnalyticsV2.Types.ArtifactType+    Amazonka.KinesisAnalyticsV2.Types.CatalogConfiguration+    Amazonka.KinesisAnalyticsV2.Types.CatalogConfigurationDescription+    Amazonka.KinesisAnalyticsV2.Types.CatalogConfigurationUpdate+    Amazonka.KinesisAnalyticsV2.Types.CheckpointConfiguration+    Amazonka.KinesisAnalyticsV2.Types.CheckpointConfigurationDescription+    Amazonka.KinesisAnalyticsV2.Types.CheckpointConfigurationUpdate+    Amazonka.KinesisAnalyticsV2.Types.CloudWatchLoggingOption+    Amazonka.KinesisAnalyticsV2.Types.CloudWatchLoggingOptionDescription+    Amazonka.KinesisAnalyticsV2.Types.CloudWatchLoggingOptionUpdate+    Amazonka.KinesisAnalyticsV2.Types.CodeContent+    Amazonka.KinesisAnalyticsV2.Types.CodeContentDescription+    Amazonka.KinesisAnalyticsV2.Types.CodeContentType+    Amazonka.KinesisAnalyticsV2.Types.CodeContentUpdate+    Amazonka.KinesisAnalyticsV2.Types.ConfigurationType+    Amazonka.KinesisAnalyticsV2.Types.CSVMappingParameters+    Amazonka.KinesisAnalyticsV2.Types.CustomArtifactConfiguration+    Amazonka.KinesisAnalyticsV2.Types.CustomArtifactConfigurationDescription+    Amazonka.KinesisAnalyticsV2.Types.DeployAsApplicationConfiguration+    Amazonka.KinesisAnalyticsV2.Types.DeployAsApplicationConfigurationDescription+    Amazonka.KinesisAnalyticsV2.Types.DeployAsApplicationConfigurationUpdate+    Amazonka.KinesisAnalyticsV2.Types.DestinationSchema+    Amazonka.KinesisAnalyticsV2.Types.EnvironmentProperties+    Amazonka.KinesisAnalyticsV2.Types.EnvironmentPropertyDescriptions+    Amazonka.KinesisAnalyticsV2.Types.EnvironmentPropertyUpdates+    Amazonka.KinesisAnalyticsV2.Types.FlinkApplicationConfiguration+    Amazonka.KinesisAnalyticsV2.Types.FlinkApplicationConfigurationDescription+    Amazonka.KinesisAnalyticsV2.Types.FlinkApplicationConfigurationUpdate+    Amazonka.KinesisAnalyticsV2.Types.FlinkRunConfiguration+    Amazonka.KinesisAnalyticsV2.Types.GlueDataCatalogConfiguration+    Amazonka.KinesisAnalyticsV2.Types.GlueDataCatalogConfigurationDescription+    Amazonka.KinesisAnalyticsV2.Types.GlueDataCatalogConfigurationUpdate+    Amazonka.KinesisAnalyticsV2.Types.Input+    Amazonka.KinesisAnalyticsV2.Types.InputDescription+    Amazonka.KinesisAnalyticsV2.Types.InputLambdaProcessor+    Amazonka.KinesisAnalyticsV2.Types.InputLambdaProcessorDescription+    Amazonka.KinesisAnalyticsV2.Types.InputLambdaProcessorUpdate+    Amazonka.KinesisAnalyticsV2.Types.InputParallelism+    Amazonka.KinesisAnalyticsV2.Types.InputParallelismUpdate+    Amazonka.KinesisAnalyticsV2.Types.InputProcessingConfiguration+    Amazonka.KinesisAnalyticsV2.Types.InputProcessingConfigurationDescription+    Amazonka.KinesisAnalyticsV2.Types.InputProcessingConfigurationUpdate+    Amazonka.KinesisAnalyticsV2.Types.InputSchemaUpdate+    Amazonka.KinesisAnalyticsV2.Types.InputStartingPosition+    Amazonka.KinesisAnalyticsV2.Types.InputStartingPositionConfiguration+    Amazonka.KinesisAnalyticsV2.Types.InputUpdate+    Amazonka.KinesisAnalyticsV2.Types.JSONMappingParameters+    Amazonka.KinesisAnalyticsV2.Types.KinesisFirehoseInput+    Amazonka.KinesisAnalyticsV2.Types.KinesisFirehoseInputDescription+    Amazonka.KinesisAnalyticsV2.Types.KinesisFirehoseInputUpdate+    Amazonka.KinesisAnalyticsV2.Types.KinesisFirehoseOutput+    Amazonka.KinesisAnalyticsV2.Types.KinesisFirehoseOutputDescription+    Amazonka.KinesisAnalyticsV2.Types.KinesisFirehoseOutputUpdate+    Amazonka.KinesisAnalyticsV2.Types.KinesisStreamsInput+    Amazonka.KinesisAnalyticsV2.Types.KinesisStreamsInputDescription+    Amazonka.KinesisAnalyticsV2.Types.KinesisStreamsInputUpdate+    Amazonka.KinesisAnalyticsV2.Types.KinesisStreamsOutput+    Amazonka.KinesisAnalyticsV2.Types.KinesisStreamsOutputDescription+    Amazonka.KinesisAnalyticsV2.Types.KinesisStreamsOutputUpdate+    Amazonka.KinesisAnalyticsV2.Types.LambdaOutput+    Amazonka.KinesisAnalyticsV2.Types.LambdaOutputDescription+    Amazonka.KinesisAnalyticsV2.Types.LambdaOutputUpdate+    Amazonka.KinesisAnalyticsV2.Types.LogLevel+    Amazonka.KinesisAnalyticsV2.Types.MappingParameters+    Amazonka.KinesisAnalyticsV2.Types.MavenReference+    Amazonka.KinesisAnalyticsV2.Types.MetricsLevel+    Amazonka.KinesisAnalyticsV2.Types.MonitoringConfiguration+    Amazonka.KinesisAnalyticsV2.Types.MonitoringConfigurationDescription+    Amazonka.KinesisAnalyticsV2.Types.MonitoringConfigurationUpdate+    Amazonka.KinesisAnalyticsV2.Types.Output+    Amazonka.KinesisAnalyticsV2.Types.OutputDescription+    Amazonka.KinesisAnalyticsV2.Types.OutputUpdate+    Amazonka.KinesisAnalyticsV2.Types.ParallelismConfiguration+    Amazonka.KinesisAnalyticsV2.Types.ParallelismConfigurationDescription+    Amazonka.KinesisAnalyticsV2.Types.ParallelismConfigurationUpdate+    Amazonka.KinesisAnalyticsV2.Types.PropertyGroup+    Amazonka.KinesisAnalyticsV2.Types.RecordColumn+    Amazonka.KinesisAnalyticsV2.Types.RecordFormat+    Amazonka.KinesisAnalyticsV2.Types.RecordFormatType+    Amazonka.KinesisAnalyticsV2.Types.ReferenceDataSource+    Amazonka.KinesisAnalyticsV2.Types.ReferenceDataSourceDescription+    Amazonka.KinesisAnalyticsV2.Types.ReferenceDataSourceUpdate+    Amazonka.KinesisAnalyticsV2.Types.RunConfiguration+    Amazonka.KinesisAnalyticsV2.Types.RunConfigurationDescription+    Amazonka.KinesisAnalyticsV2.Types.RunConfigurationUpdate+    Amazonka.KinesisAnalyticsV2.Types.RuntimeEnvironment+    Amazonka.KinesisAnalyticsV2.Types.S3ApplicationCodeLocationDescription+    Amazonka.KinesisAnalyticsV2.Types.S3Configuration+    Amazonka.KinesisAnalyticsV2.Types.S3ContentBaseLocation+    Amazonka.KinesisAnalyticsV2.Types.S3ContentBaseLocationDescription+    Amazonka.KinesisAnalyticsV2.Types.S3ContentBaseLocationUpdate+    Amazonka.KinesisAnalyticsV2.Types.S3ContentLocation+    Amazonka.KinesisAnalyticsV2.Types.S3ContentLocationUpdate+    Amazonka.KinesisAnalyticsV2.Types.S3ReferenceDataSource+    Amazonka.KinesisAnalyticsV2.Types.S3ReferenceDataSourceDescription+    Amazonka.KinesisAnalyticsV2.Types.S3ReferenceDataSourceUpdate+    Amazonka.KinesisAnalyticsV2.Types.SnapshotDetails+    Amazonka.KinesisAnalyticsV2.Types.SnapshotStatus+    Amazonka.KinesisAnalyticsV2.Types.SourceSchema+    Amazonka.KinesisAnalyticsV2.Types.SqlApplicationConfiguration+    Amazonka.KinesisAnalyticsV2.Types.SqlApplicationConfigurationDescription+    Amazonka.KinesisAnalyticsV2.Types.SqlApplicationConfigurationUpdate+    Amazonka.KinesisAnalyticsV2.Types.SqlRunConfiguration+    Amazonka.KinesisAnalyticsV2.Types.Tag+    Amazonka.KinesisAnalyticsV2.Types.UrlType+    Amazonka.KinesisAnalyticsV2.Types.VpcConfiguration+    Amazonka.KinesisAnalyticsV2.Types.VpcConfigurationDescription+    Amazonka.KinesisAnalyticsV2.Types.VpcConfigurationUpdate+    Amazonka.KinesisAnalyticsV2.Types.ZeppelinApplicationConfiguration+    Amazonka.KinesisAnalyticsV2.Types.ZeppelinApplicationConfigurationDescription+    Amazonka.KinesisAnalyticsV2.Types.ZeppelinApplicationConfigurationUpdate+    Amazonka.KinesisAnalyticsV2.Types.ZeppelinMonitoringConfiguration+    Amazonka.KinesisAnalyticsV2.Types.ZeppelinMonitoringConfigurationDescription+    Amazonka.KinesisAnalyticsV2.Types.ZeppelinMonitoringConfigurationUpdate+    Amazonka.KinesisAnalyticsV2.UntagResource+    Amazonka.KinesisAnalyticsV2.UpdateApplication+    Amazonka.KinesisAnalyticsV2.UpdateApplicationMaintenanceConfiguration+    Amazonka.KinesisAnalyticsV2.Waiters++  build-depends:+    , amazonka-core  >=2.0  && <2.1+    , base           >=4.12 && <5++test-suite amazonka-kinesisanalyticsv2-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.KinesisAnalyticsV2+    Test.Amazonka.KinesisAnalyticsV2+    Test.Amazonka.KinesisAnalyticsV2.Internal++  build-depends:+    , amazonka-core                >=2.0 && <2.1+    , amazonka-kinesisanalyticsv2+    , amazonka-test                >=2.0 && <2.1+    , base+    , bytestring+    , case-insensitive+    , tasty+    , tasty-hunit+    , text+    , time+    , unordered-containers
+ fixture/AddApplicationCloudWatchLoggingOption.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/kinesisanalytics/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  kinesisanalytics.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/AddApplicationCloudWatchLoggingOptionResponse.proto view
+ fixture/AddApplicationInput.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/kinesisanalytics/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  kinesisanalytics.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/AddApplicationInputProcessingConfiguration.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/kinesisanalytics/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  kinesisanalytics.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/AddApplicationInputProcessingConfigurationResponse.proto view
+ fixture/AddApplicationInputResponse.proto view
+ fixture/AddApplicationOutput.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/kinesisanalytics/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  kinesisanalytics.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/AddApplicationOutputResponse.proto view
+ fixture/AddApplicationReferenceDataSource.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/kinesisanalytics/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  kinesisanalytics.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/AddApplicationReferenceDataSourceResponse.proto view
+ fixture/AddApplicationVpcConfiguration.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/kinesisanalytics/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  kinesisanalytics.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/AddApplicationVpcConfigurationResponse.proto view
+ fixture/CreateApplication.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/kinesisanalytics/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  kinesisanalytics.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/CreateApplicationPresignedUrl.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/kinesisanalytics/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  kinesisanalytics.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/CreateApplicationPresignedUrlResponse.proto view
+ fixture/CreateApplicationResponse.proto view
+ fixture/CreateApplicationSnapshot.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/kinesisanalytics/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  kinesisanalytics.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/CreateApplicationSnapshotResponse.proto view
+ fixture/DeleteApplication.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/kinesisanalytics/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  kinesisanalytics.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/DeleteApplicationCloudWatchLoggingOption.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/kinesisanalytics/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  kinesisanalytics.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/DeleteApplicationCloudWatchLoggingOptionResponse.proto view
+ fixture/DeleteApplicationInputProcessingConfiguration.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/kinesisanalytics/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  kinesisanalytics.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/DeleteApplicationInputProcessingConfigurationResponse.proto view
+ fixture/DeleteApplicationOutput.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/kinesisanalytics/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  kinesisanalytics.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/DeleteApplicationOutputResponse.proto view
+ fixture/DeleteApplicationReferenceDataSource.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/kinesisanalytics/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  kinesisanalytics.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/DeleteApplicationReferenceDataSourceResponse.proto view
+ fixture/DeleteApplicationResponse.proto view
+ fixture/DeleteApplicationSnapshot.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/kinesisanalytics/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  kinesisanalytics.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/DeleteApplicationSnapshotResponse.proto view
+ fixture/DeleteApplicationVpcConfiguration.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/kinesisanalytics/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  kinesisanalytics.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/DeleteApplicationVpcConfigurationResponse.proto view
+ fixture/DescribeApplication.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/kinesisanalytics/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  kinesisanalytics.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/DescribeApplicationResponse.proto view
+ fixture/DescribeApplicationSnapshot.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/kinesisanalytics/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  kinesisanalytics.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/DescribeApplicationSnapshotResponse.proto view
+ fixture/DescribeApplicationVersion.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/kinesisanalytics/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  kinesisanalytics.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/DescribeApplicationVersionResponse.proto view
+ fixture/DiscoverInputSchema.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/kinesisanalytics/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  kinesisanalytics.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/DiscoverInputSchemaResponse.proto view
+ fixture/ListApplicationSnapshots.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/kinesisanalytics/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  kinesisanalytics.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/ListApplicationSnapshotsResponse.proto view
+ fixture/ListApplicationVersions.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/kinesisanalytics/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  kinesisanalytics.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: POST+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/kinesisanalytics/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  kinesisanalytics.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/ListTagsForResource.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/kinesisanalytics/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  kinesisanalytics.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/RollbackApplication.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/kinesisanalytics/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  kinesisanalytics.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/RollbackApplicationResponse.proto view
+ fixture/StartApplication.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/kinesisanalytics/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  kinesisanalytics.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/StopApplication.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/kinesisanalytics/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  kinesisanalytics.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/kinesisanalytics/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  kinesisanalytics.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: POST+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/kinesisanalytics/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  kinesisanalytics.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: POST+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/kinesisanalytics/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  kinesisanalytics.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/UpdateApplicationMaintenanceConfiguration.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/kinesisanalytics/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  kinesisanalytics.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/UpdateApplicationMaintenanceConfigurationResponse.proto view
+ fixture/UpdateApplicationResponse.proto view
+ gen/Amazonka/KinesisAnalyticsV2.hs view
@@ -0,0 +1,836 @@+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module      : Amazonka.KinesisAnalyticsV2+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Derived from API version @2018-05-23@ of the AWS service descriptions, licensed under Apache 2.0.+--+-- Amazon Kinesis Data Analytics is a fully managed service that you can+-- use to process and analyze streaming data using Java, SQL, or Scala. The+-- service enables you to quickly author and run Java, SQL, or Scala code+-- against streaming sources to perform time series analytics, feed+-- real-time dashboards, and create real-time metrics.+module Amazonka.KinesisAnalyticsV2+  ( -- * Service Configuration+    defaultService,++    -- * Errors+    -- $errors++    -- ** CodeValidationException+    _CodeValidationException,++    -- ** ConcurrentModificationException+    _ConcurrentModificationException,++    -- ** InvalidApplicationConfigurationException+    _InvalidApplicationConfigurationException,++    -- ** InvalidArgumentException+    _InvalidArgumentException,++    -- ** InvalidRequestException+    _InvalidRequestException,++    -- ** LimitExceededException+    _LimitExceededException,++    -- ** ResourceInUseException+    _ResourceInUseException,++    -- ** ResourceNotFoundException+    _ResourceNotFoundException,++    -- ** ResourceProvisionedThroughputExceededException+    _ResourceProvisionedThroughputExceededException,++    -- ** ServiceUnavailableException+    _ServiceUnavailableException,++    -- ** TooManyTagsException+    _TooManyTagsException,++    -- ** UnableToDetectSchemaException+    _UnableToDetectSchemaException,++    -- ** UnsupportedOperationException+    _UnsupportedOperationException,++    -- * Waiters+    -- $waiters++    -- * Operations+    -- $operations++    -- ** AddApplicationCloudWatchLoggingOption+    AddApplicationCloudWatchLoggingOption (AddApplicationCloudWatchLoggingOption'),+    newAddApplicationCloudWatchLoggingOption,+    AddApplicationCloudWatchLoggingOptionResponse (AddApplicationCloudWatchLoggingOptionResponse'),+    newAddApplicationCloudWatchLoggingOptionResponse,++    -- ** AddApplicationInput+    AddApplicationInput (AddApplicationInput'),+    newAddApplicationInput,+    AddApplicationInputResponse (AddApplicationInputResponse'),+    newAddApplicationInputResponse,++    -- ** AddApplicationInputProcessingConfiguration+    AddApplicationInputProcessingConfiguration (AddApplicationInputProcessingConfiguration'),+    newAddApplicationInputProcessingConfiguration,+    AddApplicationInputProcessingConfigurationResponse (AddApplicationInputProcessingConfigurationResponse'),+    newAddApplicationInputProcessingConfigurationResponse,++    -- ** AddApplicationOutput+    AddApplicationOutput (AddApplicationOutput'),+    newAddApplicationOutput,+    AddApplicationOutputResponse (AddApplicationOutputResponse'),+    newAddApplicationOutputResponse,++    -- ** AddApplicationReferenceDataSource+    AddApplicationReferenceDataSource (AddApplicationReferenceDataSource'),+    newAddApplicationReferenceDataSource,+    AddApplicationReferenceDataSourceResponse (AddApplicationReferenceDataSourceResponse'),+    newAddApplicationReferenceDataSourceResponse,++    -- ** AddApplicationVpcConfiguration+    AddApplicationVpcConfiguration (AddApplicationVpcConfiguration'),+    newAddApplicationVpcConfiguration,+    AddApplicationVpcConfigurationResponse (AddApplicationVpcConfigurationResponse'),+    newAddApplicationVpcConfigurationResponse,++    -- ** CreateApplication+    CreateApplication (CreateApplication'),+    newCreateApplication,+    CreateApplicationResponse (CreateApplicationResponse'),+    newCreateApplicationResponse,++    -- ** CreateApplicationPresignedUrl+    CreateApplicationPresignedUrl (CreateApplicationPresignedUrl'),+    newCreateApplicationPresignedUrl,+    CreateApplicationPresignedUrlResponse (CreateApplicationPresignedUrlResponse'),+    newCreateApplicationPresignedUrlResponse,++    -- ** CreateApplicationSnapshot+    CreateApplicationSnapshot (CreateApplicationSnapshot'),+    newCreateApplicationSnapshot,+    CreateApplicationSnapshotResponse (CreateApplicationSnapshotResponse'),+    newCreateApplicationSnapshotResponse,++    -- ** DeleteApplication+    DeleteApplication (DeleteApplication'),+    newDeleteApplication,+    DeleteApplicationResponse (DeleteApplicationResponse'),+    newDeleteApplicationResponse,++    -- ** DeleteApplicationCloudWatchLoggingOption+    DeleteApplicationCloudWatchLoggingOption (DeleteApplicationCloudWatchLoggingOption'),+    newDeleteApplicationCloudWatchLoggingOption,+    DeleteApplicationCloudWatchLoggingOptionResponse (DeleteApplicationCloudWatchLoggingOptionResponse'),+    newDeleteApplicationCloudWatchLoggingOptionResponse,++    -- ** DeleteApplicationInputProcessingConfiguration+    DeleteApplicationInputProcessingConfiguration (DeleteApplicationInputProcessingConfiguration'),+    newDeleteApplicationInputProcessingConfiguration,+    DeleteApplicationInputProcessingConfigurationResponse (DeleteApplicationInputProcessingConfigurationResponse'),+    newDeleteApplicationInputProcessingConfigurationResponse,++    -- ** DeleteApplicationOutput+    DeleteApplicationOutput (DeleteApplicationOutput'),+    newDeleteApplicationOutput,+    DeleteApplicationOutputResponse (DeleteApplicationOutputResponse'),+    newDeleteApplicationOutputResponse,++    -- ** DeleteApplicationReferenceDataSource+    DeleteApplicationReferenceDataSource (DeleteApplicationReferenceDataSource'),+    newDeleteApplicationReferenceDataSource,+    DeleteApplicationReferenceDataSourceResponse (DeleteApplicationReferenceDataSourceResponse'),+    newDeleteApplicationReferenceDataSourceResponse,++    -- ** DeleteApplicationSnapshot+    DeleteApplicationSnapshot (DeleteApplicationSnapshot'),+    newDeleteApplicationSnapshot,+    DeleteApplicationSnapshotResponse (DeleteApplicationSnapshotResponse'),+    newDeleteApplicationSnapshotResponse,++    -- ** DeleteApplicationVpcConfiguration+    DeleteApplicationVpcConfiguration (DeleteApplicationVpcConfiguration'),+    newDeleteApplicationVpcConfiguration,+    DeleteApplicationVpcConfigurationResponse (DeleteApplicationVpcConfigurationResponse'),+    newDeleteApplicationVpcConfigurationResponse,++    -- ** DescribeApplication+    DescribeApplication (DescribeApplication'),+    newDescribeApplication,+    DescribeApplicationResponse (DescribeApplicationResponse'),+    newDescribeApplicationResponse,++    -- ** DescribeApplicationSnapshot+    DescribeApplicationSnapshot (DescribeApplicationSnapshot'),+    newDescribeApplicationSnapshot,+    DescribeApplicationSnapshotResponse (DescribeApplicationSnapshotResponse'),+    newDescribeApplicationSnapshotResponse,++    -- ** DescribeApplicationVersion+    DescribeApplicationVersion (DescribeApplicationVersion'),+    newDescribeApplicationVersion,+    DescribeApplicationVersionResponse (DescribeApplicationVersionResponse'),+    newDescribeApplicationVersionResponse,++    -- ** DiscoverInputSchema+    DiscoverInputSchema (DiscoverInputSchema'),+    newDiscoverInputSchema,+    DiscoverInputSchemaResponse (DiscoverInputSchemaResponse'),+    newDiscoverInputSchemaResponse,++    -- ** ListApplicationSnapshots (Paginated)+    ListApplicationSnapshots (ListApplicationSnapshots'),+    newListApplicationSnapshots,+    ListApplicationSnapshotsResponse (ListApplicationSnapshotsResponse'),+    newListApplicationSnapshotsResponse,++    -- ** ListApplicationVersions+    ListApplicationVersions (ListApplicationVersions'),+    newListApplicationVersions,+    ListApplicationVersionsResponse (ListApplicationVersionsResponse'),+    newListApplicationVersionsResponse,++    -- ** ListApplications (Paginated)+    ListApplications (ListApplications'),+    newListApplications,+    ListApplicationsResponse (ListApplicationsResponse'),+    newListApplicationsResponse,++    -- ** ListTagsForResource+    ListTagsForResource (ListTagsForResource'),+    newListTagsForResource,+    ListTagsForResourceResponse (ListTagsForResourceResponse'),+    newListTagsForResourceResponse,++    -- ** RollbackApplication+    RollbackApplication (RollbackApplication'),+    newRollbackApplication,+    RollbackApplicationResponse (RollbackApplicationResponse'),+    newRollbackApplicationResponse,++    -- ** StartApplication+    StartApplication (StartApplication'),+    newStartApplication,+    StartApplicationResponse (StartApplicationResponse'),+    newStartApplicationResponse,++    -- ** 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,++    -- ** UpdateApplicationMaintenanceConfiguration+    UpdateApplicationMaintenanceConfiguration (UpdateApplicationMaintenanceConfiguration'),+    newUpdateApplicationMaintenanceConfiguration,+    UpdateApplicationMaintenanceConfigurationResponse (UpdateApplicationMaintenanceConfigurationResponse'),+    newUpdateApplicationMaintenanceConfigurationResponse,++    -- * Types++    -- ** ApplicationMode+    ApplicationMode (..),++    -- ** ApplicationRestoreType+    ApplicationRestoreType (..),++    -- ** ApplicationStatus+    ApplicationStatus (..),++    -- ** ArtifactType+    ArtifactType (..),++    -- ** CodeContentType+    CodeContentType (..),++    -- ** ConfigurationType+    ConfigurationType (..),++    -- ** InputStartingPosition+    InputStartingPosition (..),++    -- ** LogLevel+    LogLevel (..),++    -- ** MetricsLevel+    MetricsLevel (..),++    -- ** RecordFormatType+    RecordFormatType (..),++    -- ** RuntimeEnvironment+    RuntimeEnvironment (..),++    -- ** SnapshotStatus+    SnapshotStatus (..),++    -- ** UrlType+    UrlType (..),++    -- ** ApplicationCodeConfiguration+    ApplicationCodeConfiguration (ApplicationCodeConfiguration'),+    newApplicationCodeConfiguration,++    -- ** ApplicationCodeConfigurationDescription+    ApplicationCodeConfigurationDescription (ApplicationCodeConfigurationDescription'),+    newApplicationCodeConfigurationDescription,++    -- ** ApplicationCodeConfigurationUpdate+    ApplicationCodeConfigurationUpdate (ApplicationCodeConfigurationUpdate'),+    newApplicationCodeConfigurationUpdate,++    -- ** ApplicationConfiguration+    ApplicationConfiguration (ApplicationConfiguration'),+    newApplicationConfiguration,++    -- ** ApplicationConfigurationDescription+    ApplicationConfigurationDescription (ApplicationConfigurationDescription'),+    newApplicationConfigurationDescription,++    -- ** ApplicationConfigurationUpdate+    ApplicationConfigurationUpdate (ApplicationConfigurationUpdate'),+    newApplicationConfigurationUpdate,++    -- ** ApplicationDetail+    ApplicationDetail (ApplicationDetail'),+    newApplicationDetail,++    -- ** ApplicationMaintenanceConfigurationDescription+    ApplicationMaintenanceConfigurationDescription (ApplicationMaintenanceConfigurationDescription'),+    newApplicationMaintenanceConfigurationDescription,++    -- ** ApplicationMaintenanceConfigurationUpdate+    ApplicationMaintenanceConfigurationUpdate (ApplicationMaintenanceConfigurationUpdate'),+    newApplicationMaintenanceConfigurationUpdate,++    -- ** ApplicationRestoreConfiguration+    ApplicationRestoreConfiguration (ApplicationRestoreConfiguration'),+    newApplicationRestoreConfiguration,++    -- ** ApplicationSnapshotConfiguration+    ApplicationSnapshotConfiguration (ApplicationSnapshotConfiguration'),+    newApplicationSnapshotConfiguration,++    -- ** ApplicationSnapshotConfigurationDescription+    ApplicationSnapshotConfigurationDescription (ApplicationSnapshotConfigurationDescription'),+    newApplicationSnapshotConfigurationDescription,++    -- ** ApplicationSnapshotConfigurationUpdate+    ApplicationSnapshotConfigurationUpdate (ApplicationSnapshotConfigurationUpdate'),+    newApplicationSnapshotConfigurationUpdate,++    -- ** ApplicationSummary+    ApplicationSummary (ApplicationSummary'),+    newApplicationSummary,++    -- ** ApplicationVersionSummary+    ApplicationVersionSummary (ApplicationVersionSummary'),+    newApplicationVersionSummary,++    -- ** CSVMappingParameters+    CSVMappingParameters (CSVMappingParameters'),+    newCSVMappingParameters,++    -- ** CatalogConfiguration+    CatalogConfiguration (CatalogConfiguration'),+    newCatalogConfiguration,++    -- ** CatalogConfigurationDescription+    CatalogConfigurationDescription (CatalogConfigurationDescription'),+    newCatalogConfigurationDescription,++    -- ** CatalogConfigurationUpdate+    CatalogConfigurationUpdate (CatalogConfigurationUpdate'),+    newCatalogConfigurationUpdate,++    -- ** CheckpointConfiguration+    CheckpointConfiguration (CheckpointConfiguration'),+    newCheckpointConfiguration,++    -- ** CheckpointConfigurationDescription+    CheckpointConfigurationDescription (CheckpointConfigurationDescription'),+    newCheckpointConfigurationDescription,++    -- ** CheckpointConfigurationUpdate+    CheckpointConfigurationUpdate (CheckpointConfigurationUpdate'),+    newCheckpointConfigurationUpdate,++    -- ** CloudWatchLoggingOption+    CloudWatchLoggingOption (CloudWatchLoggingOption'),+    newCloudWatchLoggingOption,++    -- ** CloudWatchLoggingOptionDescription+    CloudWatchLoggingOptionDescription (CloudWatchLoggingOptionDescription'),+    newCloudWatchLoggingOptionDescription,++    -- ** CloudWatchLoggingOptionUpdate+    CloudWatchLoggingOptionUpdate (CloudWatchLoggingOptionUpdate'),+    newCloudWatchLoggingOptionUpdate,++    -- ** CodeContent+    CodeContent (CodeContent'),+    newCodeContent,++    -- ** CodeContentDescription+    CodeContentDescription (CodeContentDescription'),+    newCodeContentDescription,++    -- ** CodeContentUpdate+    CodeContentUpdate (CodeContentUpdate'),+    newCodeContentUpdate,++    -- ** CustomArtifactConfiguration+    CustomArtifactConfiguration (CustomArtifactConfiguration'),+    newCustomArtifactConfiguration,++    -- ** CustomArtifactConfigurationDescription+    CustomArtifactConfigurationDescription (CustomArtifactConfigurationDescription'),+    newCustomArtifactConfigurationDescription,++    -- ** DeployAsApplicationConfiguration+    DeployAsApplicationConfiguration (DeployAsApplicationConfiguration'),+    newDeployAsApplicationConfiguration,++    -- ** DeployAsApplicationConfigurationDescription+    DeployAsApplicationConfigurationDescription (DeployAsApplicationConfigurationDescription'),+    newDeployAsApplicationConfigurationDescription,++    -- ** DeployAsApplicationConfigurationUpdate+    DeployAsApplicationConfigurationUpdate (DeployAsApplicationConfigurationUpdate'),+    newDeployAsApplicationConfigurationUpdate,++    -- ** DestinationSchema+    DestinationSchema (DestinationSchema'),+    newDestinationSchema,++    -- ** EnvironmentProperties+    EnvironmentProperties (EnvironmentProperties'),+    newEnvironmentProperties,++    -- ** EnvironmentPropertyDescriptions+    EnvironmentPropertyDescriptions (EnvironmentPropertyDescriptions'),+    newEnvironmentPropertyDescriptions,++    -- ** EnvironmentPropertyUpdates+    EnvironmentPropertyUpdates (EnvironmentPropertyUpdates'),+    newEnvironmentPropertyUpdates,++    -- ** FlinkApplicationConfiguration+    FlinkApplicationConfiguration (FlinkApplicationConfiguration'),+    newFlinkApplicationConfiguration,++    -- ** FlinkApplicationConfigurationDescription+    FlinkApplicationConfigurationDescription (FlinkApplicationConfigurationDescription'),+    newFlinkApplicationConfigurationDescription,++    -- ** FlinkApplicationConfigurationUpdate+    FlinkApplicationConfigurationUpdate (FlinkApplicationConfigurationUpdate'),+    newFlinkApplicationConfigurationUpdate,++    -- ** FlinkRunConfiguration+    FlinkRunConfiguration (FlinkRunConfiguration'),+    newFlinkRunConfiguration,++    -- ** GlueDataCatalogConfiguration+    GlueDataCatalogConfiguration (GlueDataCatalogConfiguration'),+    newGlueDataCatalogConfiguration,++    -- ** GlueDataCatalogConfigurationDescription+    GlueDataCatalogConfigurationDescription (GlueDataCatalogConfigurationDescription'),+    newGlueDataCatalogConfigurationDescription,++    -- ** GlueDataCatalogConfigurationUpdate+    GlueDataCatalogConfigurationUpdate (GlueDataCatalogConfigurationUpdate'),+    newGlueDataCatalogConfigurationUpdate,++    -- ** Input+    Input (Input'),+    newInput,++    -- ** InputDescription+    InputDescription (InputDescription'),+    newInputDescription,++    -- ** InputLambdaProcessor+    InputLambdaProcessor (InputLambdaProcessor'),+    newInputLambdaProcessor,++    -- ** InputLambdaProcessorDescription+    InputLambdaProcessorDescription (InputLambdaProcessorDescription'),+    newInputLambdaProcessorDescription,++    -- ** InputLambdaProcessorUpdate+    InputLambdaProcessorUpdate (InputLambdaProcessorUpdate'),+    newInputLambdaProcessorUpdate,++    -- ** InputParallelism+    InputParallelism (InputParallelism'),+    newInputParallelism,++    -- ** InputParallelismUpdate+    InputParallelismUpdate (InputParallelismUpdate'),+    newInputParallelismUpdate,++    -- ** InputProcessingConfiguration+    InputProcessingConfiguration (InputProcessingConfiguration'),+    newInputProcessingConfiguration,++    -- ** InputProcessingConfigurationDescription+    InputProcessingConfigurationDescription (InputProcessingConfigurationDescription'),+    newInputProcessingConfigurationDescription,++    -- ** InputProcessingConfigurationUpdate+    InputProcessingConfigurationUpdate (InputProcessingConfigurationUpdate'),+    newInputProcessingConfigurationUpdate,++    -- ** InputSchemaUpdate+    InputSchemaUpdate (InputSchemaUpdate'),+    newInputSchemaUpdate,++    -- ** InputStartingPositionConfiguration+    InputStartingPositionConfiguration (InputStartingPositionConfiguration'),+    newInputStartingPositionConfiguration,++    -- ** InputUpdate+    InputUpdate (InputUpdate'),+    newInputUpdate,++    -- ** JSONMappingParameters+    JSONMappingParameters (JSONMappingParameters'),+    newJSONMappingParameters,++    -- ** KinesisFirehoseInput+    KinesisFirehoseInput (KinesisFirehoseInput'),+    newKinesisFirehoseInput,++    -- ** KinesisFirehoseInputDescription+    KinesisFirehoseInputDescription (KinesisFirehoseInputDescription'),+    newKinesisFirehoseInputDescription,++    -- ** KinesisFirehoseInputUpdate+    KinesisFirehoseInputUpdate (KinesisFirehoseInputUpdate'),+    newKinesisFirehoseInputUpdate,++    -- ** KinesisFirehoseOutput+    KinesisFirehoseOutput (KinesisFirehoseOutput'),+    newKinesisFirehoseOutput,++    -- ** KinesisFirehoseOutputDescription+    KinesisFirehoseOutputDescription (KinesisFirehoseOutputDescription'),+    newKinesisFirehoseOutputDescription,++    -- ** KinesisFirehoseOutputUpdate+    KinesisFirehoseOutputUpdate (KinesisFirehoseOutputUpdate'),+    newKinesisFirehoseOutputUpdate,++    -- ** KinesisStreamsInput+    KinesisStreamsInput (KinesisStreamsInput'),+    newKinesisStreamsInput,++    -- ** KinesisStreamsInputDescription+    KinesisStreamsInputDescription (KinesisStreamsInputDescription'),+    newKinesisStreamsInputDescription,++    -- ** KinesisStreamsInputUpdate+    KinesisStreamsInputUpdate (KinesisStreamsInputUpdate'),+    newKinesisStreamsInputUpdate,++    -- ** KinesisStreamsOutput+    KinesisStreamsOutput (KinesisStreamsOutput'),+    newKinesisStreamsOutput,++    -- ** KinesisStreamsOutputDescription+    KinesisStreamsOutputDescription (KinesisStreamsOutputDescription'),+    newKinesisStreamsOutputDescription,++    -- ** KinesisStreamsOutputUpdate+    KinesisStreamsOutputUpdate (KinesisStreamsOutputUpdate'),+    newKinesisStreamsOutputUpdate,++    -- ** LambdaOutput+    LambdaOutput (LambdaOutput'),+    newLambdaOutput,++    -- ** LambdaOutputDescription+    LambdaOutputDescription (LambdaOutputDescription'),+    newLambdaOutputDescription,++    -- ** LambdaOutputUpdate+    LambdaOutputUpdate (LambdaOutputUpdate'),+    newLambdaOutputUpdate,++    -- ** MappingParameters+    MappingParameters (MappingParameters'),+    newMappingParameters,++    -- ** MavenReference+    MavenReference (MavenReference'),+    newMavenReference,++    -- ** MonitoringConfiguration+    MonitoringConfiguration (MonitoringConfiguration'),+    newMonitoringConfiguration,++    -- ** MonitoringConfigurationDescription+    MonitoringConfigurationDescription (MonitoringConfigurationDescription'),+    newMonitoringConfigurationDescription,++    -- ** MonitoringConfigurationUpdate+    MonitoringConfigurationUpdate (MonitoringConfigurationUpdate'),+    newMonitoringConfigurationUpdate,++    -- ** Output+    Output (Output'),+    newOutput,++    -- ** OutputDescription+    OutputDescription (OutputDescription'),+    newOutputDescription,++    -- ** OutputUpdate+    OutputUpdate (OutputUpdate'),+    newOutputUpdate,++    -- ** ParallelismConfiguration+    ParallelismConfiguration (ParallelismConfiguration'),+    newParallelismConfiguration,++    -- ** ParallelismConfigurationDescription+    ParallelismConfigurationDescription (ParallelismConfigurationDescription'),+    newParallelismConfigurationDescription,++    -- ** ParallelismConfigurationUpdate+    ParallelismConfigurationUpdate (ParallelismConfigurationUpdate'),+    newParallelismConfigurationUpdate,++    -- ** PropertyGroup+    PropertyGroup (PropertyGroup'),+    newPropertyGroup,++    -- ** RecordColumn+    RecordColumn (RecordColumn'),+    newRecordColumn,++    -- ** RecordFormat+    RecordFormat (RecordFormat'),+    newRecordFormat,++    -- ** ReferenceDataSource+    ReferenceDataSource (ReferenceDataSource'),+    newReferenceDataSource,++    -- ** ReferenceDataSourceDescription+    ReferenceDataSourceDescription (ReferenceDataSourceDescription'),+    newReferenceDataSourceDescription,++    -- ** ReferenceDataSourceUpdate+    ReferenceDataSourceUpdate (ReferenceDataSourceUpdate'),+    newReferenceDataSourceUpdate,++    -- ** RunConfiguration+    RunConfiguration (RunConfiguration'),+    newRunConfiguration,++    -- ** RunConfigurationDescription+    RunConfigurationDescription (RunConfigurationDescription'),+    newRunConfigurationDescription,++    -- ** RunConfigurationUpdate+    RunConfigurationUpdate (RunConfigurationUpdate'),+    newRunConfigurationUpdate,++    -- ** S3ApplicationCodeLocationDescription+    S3ApplicationCodeLocationDescription (S3ApplicationCodeLocationDescription'),+    newS3ApplicationCodeLocationDescription,++    -- ** S3Configuration+    S3Configuration (S3Configuration'),+    newS3Configuration,++    -- ** S3ContentBaseLocation+    S3ContentBaseLocation (S3ContentBaseLocation'),+    newS3ContentBaseLocation,++    -- ** S3ContentBaseLocationDescription+    S3ContentBaseLocationDescription (S3ContentBaseLocationDescription'),+    newS3ContentBaseLocationDescription,++    -- ** S3ContentBaseLocationUpdate+    S3ContentBaseLocationUpdate (S3ContentBaseLocationUpdate'),+    newS3ContentBaseLocationUpdate,++    -- ** S3ContentLocation+    S3ContentLocation (S3ContentLocation'),+    newS3ContentLocation,++    -- ** S3ContentLocationUpdate+    S3ContentLocationUpdate (S3ContentLocationUpdate'),+    newS3ContentLocationUpdate,++    -- ** S3ReferenceDataSource+    S3ReferenceDataSource (S3ReferenceDataSource'),+    newS3ReferenceDataSource,++    -- ** S3ReferenceDataSourceDescription+    S3ReferenceDataSourceDescription (S3ReferenceDataSourceDescription'),+    newS3ReferenceDataSourceDescription,++    -- ** S3ReferenceDataSourceUpdate+    S3ReferenceDataSourceUpdate (S3ReferenceDataSourceUpdate'),+    newS3ReferenceDataSourceUpdate,++    -- ** SnapshotDetails+    SnapshotDetails (SnapshotDetails'),+    newSnapshotDetails,++    -- ** SourceSchema+    SourceSchema (SourceSchema'),+    newSourceSchema,++    -- ** SqlApplicationConfiguration+    SqlApplicationConfiguration (SqlApplicationConfiguration'),+    newSqlApplicationConfiguration,++    -- ** SqlApplicationConfigurationDescription+    SqlApplicationConfigurationDescription (SqlApplicationConfigurationDescription'),+    newSqlApplicationConfigurationDescription,++    -- ** SqlApplicationConfigurationUpdate+    SqlApplicationConfigurationUpdate (SqlApplicationConfigurationUpdate'),+    newSqlApplicationConfigurationUpdate,++    -- ** SqlRunConfiguration+    SqlRunConfiguration (SqlRunConfiguration'),+    newSqlRunConfiguration,++    -- ** Tag+    Tag (Tag'),+    newTag,++    -- ** VpcConfiguration+    VpcConfiguration (VpcConfiguration'),+    newVpcConfiguration,++    -- ** VpcConfigurationDescription+    VpcConfigurationDescription (VpcConfigurationDescription'),+    newVpcConfigurationDescription,++    -- ** VpcConfigurationUpdate+    VpcConfigurationUpdate (VpcConfigurationUpdate'),+    newVpcConfigurationUpdate,++    -- ** ZeppelinApplicationConfiguration+    ZeppelinApplicationConfiguration (ZeppelinApplicationConfiguration'),+    newZeppelinApplicationConfiguration,++    -- ** ZeppelinApplicationConfigurationDescription+    ZeppelinApplicationConfigurationDescription (ZeppelinApplicationConfigurationDescription'),+    newZeppelinApplicationConfigurationDescription,++    -- ** ZeppelinApplicationConfigurationUpdate+    ZeppelinApplicationConfigurationUpdate (ZeppelinApplicationConfigurationUpdate'),+    newZeppelinApplicationConfigurationUpdate,++    -- ** ZeppelinMonitoringConfiguration+    ZeppelinMonitoringConfiguration (ZeppelinMonitoringConfiguration'),+    newZeppelinMonitoringConfiguration,++    -- ** ZeppelinMonitoringConfigurationDescription+    ZeppelinMonitoringConfigurationDescription (ZeppelinMonitoringConfigurationDescription'),+    newZeppelinMonitoringConfigurationDescription,++    -- ** ZeppelinMonitoringConfigurationUpdate+    ZeppelinMonitoringConfigurationUpdate (ZeppelinMonitoringConfigurationUpdate'),+    newZeppelinMonitoringConfigurationUpdate,+  )+where++import Amazonka.KinesisAnalyticsV2.AddApplicationCloudWatchLoggingOption+import Amazonka.KinesisAnalyticsV2.AddApplicationInput+import Amazonka.KinesisAnalyticsV2.AddApplicationInputProcessingConfiguration+import Amazonka.KinesisAnalyticsV2.AddApplicationOutput+import Amazonka.KinesisAnalyticsV2.AddApplicationReferenceDataSource+import Amazonka.KinesisAnalyticsV2.AddApplicationVpcConfiguration+import Amazonka.KinesisAnalyticsV2.CreateApplication+import Amazonka.KinesisAnalyticsV2.CreateApplicationPresignedUrl+import Amazonka.KinesisAnalyticsV2.CreateApplicationSnapshot+import Amazonka.KinesisAnalyticsV2.DeleteApplication+import Amazonka.KinesisAnalyticsV2.DeleteApplicationCloudWatchLoggingOption+import Amazonka.KinesisAnalyticsV2.DeleteApplicationInputProcessingConfiguration+import Amazonka.KinesisAnalyticsV2.DeleteApplicationOutput+import Amazonka.KinesisAnalyticsV2.DeleteApplicationReferenceDataSource+import Amazonka.KinesisAnalyticsV2.DeleteApplicationSnapshot+import Amazonka.KinesisAnalyticsV2.DeleteApplicationVpcConfiguration+import Amazonka.KinesisAnalyticsV2.DescribeApplication+import Amazonka.KinesisAnalyticsV2.DescribeApplicationSnapshot+import Amazonka.KinesisAnalyticsV2.DescribeApplicationVersion+import Amazonka.KinesisAnalyticsV2.DiscoverInputSchema+import Amazonka.KinesisAnalyticsV2.Lens+import Amazonka.KinesisAnalyticsV2.ListApplicationSnapshots+import Amazonka.KinesisAnalyticsV2.ListApplicationVersions+import Amazonka.KinesisAnalyticsV2.ListApplications+import Amazonka.KinesisAnalyticsV2.ListTagsForResource+import Amazonka.KinesisAnalyticsV2.RollbackApplication+import Amazonka.KinesisAnalyticsV2.StartApplication+import Amazonka.KinesisAnalyticsV2.StopApplication+import Amazonka.KinesisAnalyticsV2.TagResource+import Amazonka.KinesisAnalyticsV2.Types+import Amazonka.KinesisAnalyticsV2.UntagResource+import Amazonka.KinesisAnalyticsV2.UpdateApplication+import Amazonka.KinesisAnalyticsV2.UpdateApplicationMaintenanceConfiguration+import Amazonka.KinesisAnalyticsV2.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 'KinesisAnalyticsV2'.++-- $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/KinesisAnalyticsV2/AddApplicationCloudWatchLoggingOption.hs view
@@ -0,0 +1,320 @@+{-# 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.KinesisAnalyticsV2.AddApplicationCloudWatchLoggingOption+-- 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 an Amazon CloudWatch log stream to monitor application+-- configuration errors.+module Amazonka.KinesisAnalyticsV2.AddApplicationCloudWatchLoggingOption+  ( -- * Creating a Request+    AddApplicationCloudWatchLoggingOption (..),+    newAddApplicationCloudWatchLoggingOption,++    -- * Request Lenses+    addApplicationCloudWatchLoggingOption_conditionalToken,+    addApplicationCloudWatchLoggingOption_currentApplicationVersionId,+    addApplicationCloudWatchLoggingOption_applicationName,+    addApplicationCloudWatchLoggingOption_cloudWatchLoggingOption,++    -- * Destructuring the Response+    AddApplicationCloudWatchLoggingOptionResponse (..),+    newAddApplicationCloudWatchLoggingOptionResponse,++    -- * Response Lenses+    addApplicationCloudWatchLoggingOptionResponse_applicationARN,+    addApplicationCloudWatchLoggingOptionResponse_applicationVersionId,+    addApplicationCloudWatchLoggingOptionResponse_cloudWatchLoggingOptionDescriptions,+    addApplicationCloudWatchLoggingOptionResponse_httpStatus,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newAddApplicationCloudWatchLoggingOption' smart constructor.+data AddApplicationCloudWatchLoggingOption = AddApplicationCloudWatchLoggingOption'+  { -- | A value you use to implement strong concurrency for application updates.+    -- You must provide the @CurrentApplicationVersionId@ or the+    -- @ConditionalToken@. You get the application\'s current+    -- @ConditionalToken@ using DescribeApplication. For better concurrency+    -- support, use the @ConditionalToken@ parameter instead of+    -- @CurrentApplicationVersionId@.+    conditionalToken :: Prelude.Maybe Prelude.Text,+    -- | The version ID of the Kinesis Data Analytics application. You must+    -- provide the @CurrentApplicationVersionId@ or the @ConditionalToken@.You+    -- can retrieve the application version ID using DescribeApplication. For+    -- better concurrency support, use the @ConditionalToken@ parameter instead+    -- of @CurrentApplicationVersionId@.+    currentApplicationVersionId :: Prelude.Maybe Prelude.Natural,+    -- | The Kinesis Data Analytics application name.+    applicationName :: Prelude.Text,+    -- | Provides the Amazon CloudWatch log stream Amazon Resource Name (ARN).+    cloudWatchLoggingOption :: CloudWatchLoggingOption+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AddApplicationCloudWatchLoggingOption' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'conditionalToken', 'addApplicationCloudWatchLoggingOption_conditionalToken' - A value you use to implement strong concurrency for application updates.+-- You must provide the @CurrentApplicationVersionId@ or the+-- @ConditionalToken@. You get the application\'s current+-- @ConditionalToken@ using DescribeApplication. For better concurrency+-- support, use the @ConditionalToken@ parameter instead of+-- @CurrentApplicationVersionId@.+--+-- 'currentApplicationVersionId', 'addApplicationCloudWatchLoggingOption_currentApplicationVersionId' - The version ID of the Kinesis Data Analytics application. You must+-- provide the @CurrentApplicationVersionId@ or the @ConditionalToken@.You+-- can retrieve the application version ID using DescribeApplication. For+-- better concurrency support, use the @ConditionalToken@ parameter instead+-- of @CurrentApplicationVersionId@.+--+-- 'applicationName', 'addApplicationCloudWatchLoggingOption_applicationName' - The Kinesis Data Analytics application name.+--+-- 'cloudWatchLoggingOption', 'addApplicationCloudWatchLoggingOption_cloudWatchLoggingOption' - Provides the Amazon CloudWatch log stream Amazon Resource Name (ARN).+newAddApplicationCloudWatchLoggingOption ::+  -- | 'applicationName'+  Prelude.Text ->+  -- | 'cloudWatchLoggingOption'+  CloudWatchLoggingOption ->+  AddApplicationCloudWatchLoggingOption+newAddApplicationCloudWatchLoggingOption+  pApplicationName_+  pCloudWatchLoggingOption_ =+    AddApplicationCloudWatchLoggingOption'+      { conditionalToken =+          Prelude.Nothing,+        currentApplicationVersionId =+          Prelude.Nothing,+        applicationName = pApplicationName_,+        cloudWatchLoggingOption =+          pCloudWatchLoggingOption_+      }++-- | A value you use to implement strong concurrency for application updates.+-- You must provide the @CurrentApplicationVersionId@ or the+-- @ConditionalToken@. You get the application\'s current+-- @ConditionalToken@ using DescribeApplication. For better concurrency+-- support, use the @ConditionalToken@ parameter instead of+-- @CurrentApplicationVersionId@.+addApplicationCloudWatchLoggingOption_conditionalToken :: Lens.Lens' AddApplicationCloudWatchLoggingOption (Prelude.Maybe Prelude.Text)+addApplicationCloudWatchLoggingOption_conditionalToken = Lens.lens (\AddApplicationCloudWatchLoggingOption' {conditionalToken} -> conditionalToken) (\s@AddApplicationCloudWatchLoggingOption' {} a -> s {conditionalToken = a} :: AddApplicationCloudWatchLoggingOption)++-- | The version ID of the Kinesis Data Analytics application. You must+-- provide the @CurrentApplicationVersionId@ or the @ConditionalToken@.You+-- can retrieve the application version ID using DescribeApplication. For+-- better concurrency support, use the @ConditionalToken@ parameter instead+-- of @CurrentApplicationVersionId@.+addApplicationCloudWatchLoggingOption_currentApplicationVersionId :: Lens.Lens' AddApplicationCloudWatchLoggingOption (Prelude.Maybe Prelude.Natural)+addApplicationCloudWatchLoggingOption_currentApplicationVersionId = Lens.lens (\AddApplicationCloudWatchLoggingOption' {currentApplicationVersionId} -> currentApplicationVersionId) (\s@AddApplicationCloudWatchLoggingOption' {} a -> s {currentApplicationVersionId = a} :: AddApplicationCloudWatchLoggingOption)++-- | The Kinesis Data Analytics application name.+addApplicationCloudWatchLoggingOption_applicationName :: Lens.Lens' AddApplicationCloudWatchLoggingOption Prelude.Text+addApplicationCloudWatchLoggingOption_applicationName = Lens.lens (\AddApplicationCloudWatchLoggingOption' {applicationName} -> applicationName) (\s@AddApplicationCloudWatchLoggingOption' {} a -> s {applicationName = a} :: AddApplicationCloudWatchLoggingOption)++-- | Provides the Amazon CloudWatch log stream Amazon Resource Name (ARN).+addApplicationCloudWatchLoggingOption_cloudWatchLoggingOption :: Lens.Lens' AddApplicationCloudWatchLoggingOption CloudWatchLoggingOption+addApplicationCloudWatchLoggingOption_cloudWatchLoggingOption = Lens.lens (\AddApplicationCloudWatchLoggingOption' {cloudWatchLoggingOption} -> cloudWatchLoggingOption) (\s@AddApplicationCloudWatchLoggingOption' {} a -> s {cloudWatchLoggingOption = a} :: AddApplicationCloudWatchLoggingOption)++instance+  Core.AWSRequest+    AddApplicationCloudWatchLoggingOption+  where+  type+    AWSResponse+      AddApplicationCloudWatchLoggingOption =+      AddApplicationCloudWatchLoggingOptionResponse+  request overrides =+    Request.postJSON (overrides defaultService)+  response =+    Response.receiveJSON+      ( \s h x ->+          AddApplicationCloudWatchLoggingOptionResponse'+            Prelude.<$> (x Data..?> "ApplicationARN")+            Prelude.<*> (x Data..?> "ApplicationVersionId")+            Prelude.<*> ( x+                            Data..?> "CloudWatchLoggingOptionDescriptions"+                            Core..!@ Prelude.mempty+                        )+            Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+      )++instance+  Prelude.Hashable+    AddApplicationCloudWatchLoggingOption+  where+  hashWithSalt+    _salt+    AddApplicationCloudWatchLoggingOption' {..} =+      _salt+        `Prelude.hashWithSalt` conditionalToken+        `Prelude.hashWithSalt` currentApplicationVersionId+        `Prelude.hashWithSalt` applicationName+        `Prelude.hashWithSalt` cloudWatchLoggingOption++instance+  Prelude.NFData+    AddApplicationCloudWatchLoggingOption+  where+  rnf AddApplicationCloudWatchLoggingOption' {..} =+    Prelude.rnf conditionalToken+      `Prelude.seq` Prelude.rnf currentApplicationVersionId+      `Prelude.seq` Prelude.rnf applicationName+      `Prelude.seq` Prelude.rnf cloudWatchLoggingOption++instance+  Data.ToHeaders+    AddApplicationCloudWatchLoggingOption+  where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "X-Amz-Target"+              Data.=# ( "KinesisAnalytics_20180523.AddApplicationCloudWatchLoggingOption" ::+                          Prelude.ByteString+                      ),+            "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance+  Data.ToJSON+    AddApplicationCloudWatchLoggingOption+  where+  toJSON AddApplicationCloudWatchLoggingOption' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("ConditionalToken" Data..=)+              Prelude.<$> conditionalToken,+            ("CurrentApplicationVersionId" Data..=)+              Prelude.<$> currentApplicationVersionId,+            Prelude.Just+              ("ApplicationName" Data..= applicationName),+            Prelude.Just+              ( "CloudWatchLoggingOption"+                  Data..= cloudWatchLoggingOption+              )+          ]+      )++instance+  Data.ToPath+    AddApplicationCloudWatchLoggingOption+  where+  toPath = Prelude.const "/"++instance+  Data.ToQuery+    AddApplicationCloudWatchLoggingOption+  where+  toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newAddApplicationCloudWatchLoggingOptionResponse' smart constructor.+data AddApplicationCloudWatchLoggingOptionResponse = AddApplicationCloudWatchLoggingOptionResponse'+  { -- | The application\'s ARN.+    applicationARN :: Prelude.Maybe Prelude.Text,+    -- | The new version ID of the Kinesis Data Analytics application. Kinesis+    -- Data Analytics updates the @ApplicationVersionId@ each time you change+    -- the CloudWatch logging options.+    applicationVersionId :: Prelude.Maybe Prelude.Natural,+    -- | The descriptions of the current CloudWatch logging options for the+    -- Kinesis Data Analytics application.+    cloudWatchLoggingOptionDescriptions :: Prelude.Maybe [CloudWatchLoggingOptionDescription],+    -- | The response's http status code.+    httpStatus :: Prelude.Int+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AddApplicationCloudWatchLoggingOptionResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applicationARN', 'addApplicationCloudWatchLoggingOptionResponse_applicationARN' - The application\'s ARN.+--+-- 'applicationVersionId', 'addApplicationCloudWatchLoggingOptionResponse_applicationVersionId' - The new version ID of the Kinesis Data Analytics application. Kinesis+-- Data Analytics updates the @ApplicationVersionId@ each time you change+-- the CloudWatch logging options.+--+-- 'cloudWatchLoggingOptionDescriptions', 'addApplicationCloudWatchLoggingOptionResponse_cloudWatchLoggingOptionDescriptions' - The descriptions of the current CloudWatch logging options for the+-- Kinesis Data Analytics application.+--+-- 'httpStatus', 'addApplicationCloudWatchLoggingOptionResponse_httpStatus' - The response's http status code.+newAddApplicationCloudWatchLoggingOptionResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  AddApplicationCloudWatchLoggingOptionResponse+newAddApplicationCloudWatchLoggingOptionResponse+  pHttpStatus_ =+    AddApplicationCloudWatchLoggingOptionResponse'+      { applicationARN =+          Prelude.Nothing,+        applicationVersionId =+          Prelude.Nothing,+        cloudWatchLoggingOptionDescriptions =+          Prelude.Nothing,+        httpStatus = pHttpStatus_+      }++-- | The application\'s ARN.+addApplicationCloudWatchLoggingOptionResponse_applicationARN :: Lens.Lens' AddApplicationCloudWatchLoggingOptionResponse (Prelude.Maybe Prelude.Text)+addApplicationCloudWatchLoggingOptionResponse_applicationARN = Lens.lens (\AddApplicationCloudWatchLoggingOptionResponse' {applicationARN} -> applicationARN) (\s@AddApplicationCloudWatchLoggingOptionResponse' {} a -> s {applicationARN = a} :: AddApplicationCloudWatchLoggingOptionResponse)++-- | The new version ID of the Kinesis Data Analytics application. Kinesis+-- Data Analytics updates the @ApplicationVersionId@ each time you change+-- the CloudWatch logging options.+addApplicationCloudWatchLoggingOptionResponse_applicationVersionId :: Lens.Lens' AddApplicationCloudWatchLoggingOptionResponse (Prelude.Maybe Prelude.Natural)+addApplicationCloudWatchLoggingOptionResponse_applicationVersionId = Lens.lens (\AddApplicationCloudWatchLoggingOptionResponse' {applicationVersionId} -> applicationVersionId) (\s@AddApplicationCloudWatchLoggingOptionResponse' {} a -> s {applicationVersionId = a} :: AddApplicationCloudWatchLoggingOptionResponse)++-- | The descriptions of the current CloudWatch logging options for the+-- Kinesis Data Analytics application.+addApplicationCloudWatchLoggingOptionResponse_cloudWatchLoggingOptionDescriptions :: Lens.Lens' AddApplicationCloudWatchLoggingOptionResponse (Prelude.Maybe [CloudWatchLoggingOptionDescription])+addApplicationCloudWatchLoggingOptionResponse_cloudWatchLoggingOptionDescriptions = Lens.lens (\AddApplicationCloudWatchLoggingOptionResponse' {cloudWatchLoggingOptionDescriptions} -> cloudWatchLoggingOptionDescriptions) (\s@AddApplicationCloudWatchLoggingOptionResponse' {} a -> s {cloudWatchLoggingOptionDescriptions = a} :: AddApplicationCloudWatchLoggingOptionResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+addApplicationCloudWatchLoggingOptionResponse_httpStatus :: Lens.Lens' AddApplicationCloudWatchLoggingOptionResponse Prelude.Int+addApplicationCloudWatchLoggingOptionResponse_httpStatus = Lens.lens (\AddApplicationCloudWatchLoggingOptionResponse' {httpStatus} -> httpStatus) (\s@AddApplicationCloudWatchLoggingOptionResponse' {} a -> s {httpStatus = a} :: AddApplicationCloudWatchLoggingOptionResponse)++instance+  Prelude.NFData+    AddApplicationCloudWatchLoggingOptionResponse+  where+  rnf+    AddApplicationCloudWatchLoggingOptionResponse' {..} =+      Prelude.rnf applicationARN+        `Prelude.seq` Prelude.rnf applicationVersionId+        `Prelude.seq` Prelude.rnf cloudWatchLoggingOptionDescriptions+        `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/KinesisAnalyticsV2/AddApplicationInput.hs view
@@ -0,0 +1,257 @@+{-# 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.KinesisAnalyticsV2.AddApplicationInput+-- 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 a streaming source to your SQL-based Kinesis Data Analytics+-- application.+--+-- You can add a streaming source when you create an application, or you+-- can use this operation to add a streaming source after you create an+-- application. For more information, see CreateApplication.+--+-- Any configuration update, including adding a streaming source using this+-- operation, results in a new version of the application. You can use the+-- DescribeApplication operation to find the current application version.+module Amazonka.KinesisAnalyticsV2.AddApplicationInput+  ( -- * Creating a Request+    AddApplicationInput (..),+    newAddApplicationInput,++    -- * Request Lenses+    addApplicationInput_applicationName,+    addApplicationInput_currentApplicationVersionId,+    addApplicationInput_input,++    -- * Destructuring the Response+    AddApplicationInputResponse (..),+    newAddApplicationInputResponse,++    -- * Response Lenses+    addApplicationInputResponse_applicationARN,+    addApplicationInputResponse_applicationVersionId,+    addApplicationInputResponse_inputDescriptions,+    addApplicationInputResponse_httpStatus,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newAddApplicationInput' smart constructor.+data AddApplicationInput = AddApplicationInput'+  { -- | The name of your existing application to which you want to add the+    -- streaming source.+    applicationName :: Prelude.Text,+    -- | The current version of your application. You must provide the+    -- @ApplicationVersionID@ or the @ConditionalToken@.You can use the+    -- DescribeApplication operation to find the current application version.+    currentApplicationVersionId :: Prelude.Natural,+    -- | The Input to add.+    input :: Input+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AddApplicationInput' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applicationName', 'addApplicationInput_applicationName' - The name of your existing application to which you want to add the+-- streaming source.+--+-- 'currentApplicationVersionId', 'addApplicationInput_currentApplicationVersionId' - The current version of your application. You must provide the+-- @ApplicationVersionID@ or the @ConditionalToken@.You can use the+-- DescribeApplication operation to find the current application version.+--+-- 'input', 'addApplicationInput_input' - The Input to add.+newAddApplicationInput ::+  -- | 'applicationName'+  Prelude.Text ->+  -- | 'currentApplicationVersionId'+  Prelude.Natural ->+  -- | 'input'+  Input ->+  AddApplicationInput+newAddApplicationInput+  pApplicationName_+  pCurrentApplicationVersionId_+  pInput_ =+    AddApplicationInput'+      { applicationName =+          pApplicationName_,+        currentApplicationVersionId =+          pCurrentApplicationVersionId_,+        input = pInput_+      }++-- | The name of your existing application to which you want to add the+-- streaming source.+addApplicationInput_applicationName :: Lens.Lens' AddApplicationInput Prelude.Text+addApplicationInput_applicationName = Lens.lens (\AddApplicationInput' {applicationName} -> applicationName) (\s@AddApplicationInput' {} a -> s {applicationName = a} :: AddApplicationInput)++-- | The current version of your application. You must provide the+-- @ApplicationVersionID@ or the @ConditionalToken@.You can use the+-- DescribeApplication operation to find the current application version.+addApplicationInput_currentApplicationVersionId :: Lens.Lens' AddApplicationInput Prelude.Natural+addApplicationInput_currentApplicationVersionId = Lens.lens (\AddApplicationInput' {currentApplicationVersionId} -> currentApplicationVersionId) (\s@AddApplicationInput' {} a -> s {currentApplicationVersionId = a} :: AddApplicationInput)++-- | The Input to add.+addApplicationInput_input :: Lens.Lens' AddApplicationInput Input+addApplicationInput_input = Lens.lens (\AddApplicationInput' {input} -> input) (\s@AddApplicationInput' {} a -> s {input = a} :: AddApplicationInput)++instance Core.AWSRequest AddApplicationInput where+  type+    AWSResponse AddApplicationInput =+      AddApplicationInputResponse+  request overrides =+    Request.postJSON (overrides defaultService)+  response =+    Response.receiveJSON+      ( \s h x ->+          AddApplicationInputResponse'+            Prelude.<$> (x Data..?> "ApplicationARN")+            Prelude.<*> (x Data..?> "ApplicationVersionId")+            Prelude.<*> ( x+                            Data..?> "InputDescriptions"+                            Core..!@ Prelude.mempty+                        )+            Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+      )++instance Prelude.Hashable AddApplicationInput where+  hashWithSalt _salt AddApplicationInput' {..} =+    _salt+      `Prelude.hashWithSalt` applicationName+      `Prelude.hashWithSalt` currentApplicationVersionId+      `Prelude.hashWithSalt` input++instance Prelude.NFData AddApplicationInput where+  rnf AddApplicationInput' {..} =+    Prelude.rnf applicationName+      `Prelude.seq` Prelude.rnf currentApplicationVersionId+      `Prelude.seq` Prelude.rnf input++instance Data.ToHeaders AddApplicationInput where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "X-Amz-Target"+              Data.=# ( "KinesisAnalytics_20180523.AddApplicationInput" ::+                          Prelude.ByteString+                      ),+            "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance Data.ToJSON AddApplicationInput where+  toJSON AddApplicationInput' {..} =+    Data.object+      ( Prelude.catMaybes+          [ Prelude.Just+              ("ApplicationName" Data..= applicationName),+            Prelude.Just+              ( "CurrentApplicationVersionId"+                  Data..= currentApplicationVersionId+              ),+            Prelude.Just ("Input" Data..= input)+          ]+      )++instance Data.ToPath AddApplicationInput where+  toPath = Prelude.const "/"++instance Data.ToQuery AddApplicationInput where+  toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newAddApplicationInputResponse' smart constructor.+data AddApplicationInputResponse = AddApplicationInputResponse'+  { -- | The Amazon Resource Name (ARN) of the application.+    applicationARN :: Prelude.Maybe Prelude.Text,+    -- | Provides the current application version.+    applicationVersionId :: Prelude.Maybe Prelude.Natural,+    -- | Describes the application input configuration.+    inputDescriptions :: Prelude.Maybe [InputDescription],+    -- | The response's http status code.+    httpStatus :: Prelude.Int+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AddApplicationInputResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applicationARN', 'addApplicationInputResponse_applicationARN' - The Amazon Resource Name (ARN) of the application.+--+-- 'applicationVersionId', 'addApplicationInputResponse_applicationVersionId' - Provides the current application version.+--+-- 'inputDescriptions', 'addApplicationInputResponse_inputDescriptions' - Describes the application input configuration.+--+-- 'httpStatus', 'addApplicationInputResponse_httpStatus' - The response's http status code.+newAddApplicationInputResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  AddApplicationInputResponse+newAddApplicationInputResponse pHttpStatus_ =+  AddApplicationInputResponse'+    { applicationARN =+        Prelude.Nothing,+      applicationVersionId = Prelude.Nothing,+      inputDescriptions = Prelude.Nothing,+      httpStatus = pHttpStatus_+    }++-- | The Amazon Resource Name (ARN) of the application.+addApplicationInputResponse_applicationARN :: Lens.Lens' AddApplicationInputResponse (Prelude.Maybe Prelude.Text)+addApplicationInputResponse_applicationARN = Lens.lens (\AddApplicationInputResponse' {applicationARN} -> applicationARN) (\s@AddApplicationInputResponse' {} a -> s {applicationARN = a} :: AddApplicationInputResponse)++-- | Provides the current application version.+addApplicationInputResponse_applicationVersionId :: Lens.Lens' AddApplicationInputResponse (Prelude.Maybe Prelude.Natural)+addApplicationInputResponse_applicationVersionId = Lens.lens (\AddApplicationInputResponse' {applicationVersionId} -> applicationVersionId) (\s@AddApplicationInputResponse' {} a -> s {applicationVersionId = a} :: AddApplicationInputResponse)++-- | Describes the application input configuration.+addApplicationInputResponse_inputDescriptions :: Lens.Lens' AddApplicationInputResponse (Prelude.Maybe [InputDescription])+addApplicationInputResponse_inputDescriptions = Lens.lens (\AddApplicationInputResponse' {inputDescriptions} -> inputDescriptions) (\s@AddApplicationInputResponse' {} a -> s {inputDescriptions = a} :: AddApplicationInputResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+addApplicationInputResponse_httpStatus :: Lens.Lens' AddApplicationInputResponse Prelude.Int+addApplicationInputResponse_httpStatus = Lens.lens (\AddApplicationInputResponse' {httpStatus} -> httpStatus) (\s@AddApplicationInputResponse' {} a -> s {httpStatus = a} :: AddApplicationInputResponse)++instance Prelude.NFData AddApplicationInputResponse where+  rnf AddApplicationInputResponse' {..} =+    Prelude.rnf applicationARN+      `Prelude.seq` Prelude.rnf applicationVersionId+      `Prelude.seq` Prelude.rnf inputDescriptions+      `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/KinesisAnalyticsV2/AddApplicationInputProcessingConfiguration.hs view
@@ -0,0 +1,335 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.KinesisAnalyticsV2.AddApplicationInputProcessingConfiguration+-- 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 an InputProcessingConfiguration to a SQL-based Kinesis Data+-- Analytics application. An input processor pre-processes records on the+-- input stream before the application\'s SQL code executes. Currently, the+-- only input processor available is+-- <https://docs.aws.amazon.com/lambda/ Amazon Lambda>.+module Amazonka.KinesisAnalyticsV2.AddApplicationInputProcessingConfiguration+  ( -- * Creating a Request+    AddApplicationInputProcessingConfiguration (..),+    newAddApplicationInputProcessingConfiguration,++    -- * Request Lenses+    addApplicationInputProcessingConfiguration_applicationName,+    addApplicationInputProcessingConfiguration_currentApplicationVersionId,+    addApplicationInputProcessingConfiguration_inputId,+    addApplicationInputProcessingConfiguration_inputProcessingConfiguration,++    -- * Destructuring the Response+    AddApplicationInputProcessingConfigurationResponse (..),+    newAddApplicationInputProcessingConfigurationResponse,++    -- * Response Lenses+    addApplicationInputProcessingConfigurationResponse_applicationARN,+    addApplicationInputProcessingConfigurationResponse_applicationVersionId,+    addApplicationInputProcessingConfigurationResponse_inputId,+    addApplicationInputProcessingConfigurationResponse_inputProcessingConfigurationDescription,+    addApplicationInputProcessingConfigurationResponse_httpStatus,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newAddApplicationInputProcessingConfiguration' smart constructor.+data AddApplicationInputProcessingConfiguration = AddApplicationInputProcessingConfiguration'+  { -- | The name of the application to which you want to add the input+    -- processing configuration.+    applicationName :: Prelude.Text,+    -- | The version of the application to which you want to add the input+    -- processing configuration. You can use the DescribeApplication operation+    -- to get the current application version. If the version specified is not+    -- the current version, the @ConcurrentModificationException@ is returned.+    currentApplicationVersionId :: Prelude.Natural,+    -- | The ID of the input configuration to add the input processing+    -- configuration to. You can get a list of the input IDs for an application+    -- using the DescribeApplication operation.+    inputId :: Prelude.Text,+    -- | The InputProcessingConfiguration to add to the application.+    inputProcessingConfiguration :: InputProcessingConfiguration+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AddApplicationInputProcessingConfiguration' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applicationName', 'addApplicationInputProcessingConfiguration_applicationName' - The name of the application to which you want to add the input+-- processing configuration.+--+-- 'currentApplicationVersionId', 'addApplicationInputProcessingConfiguration_currentApplicationVersionId' - The version of the application to which you want to add the input+-- processing configuration. You can use the DescribeApplication operation+-- to get the current application version. If the version specified is not+-- the current version, the @ConcurrentModificationException@ is returned.+--+-- 'inputId', 'addApplicationInputProcessingConfiguration_inputId' - The ID of the input configuration to add the input processing+-- configuration to. You can get a list of the input IDs for an application+-- using the DescribeApplication operation.+--+-- 'inputProcessingConfiguration', 'addApplicationInputProcessingConfiguration_inputProcessingConfiguration' - The InputProcessingConfiguration to add to the application.+newAddApplicationInputProcessingConfiguration ::+  -- | 'applicationName'+  Prelude.Text ->+  -- | 'currentApplicationVersionId'+  Prelude.Natural ->+  -- | 'inputId'+  Prelude.Text ->+  -- | 'inputProcessingConfiguration'+  InputProcessingConfiguration ->+  AddApplicationInputProcessingConfiguration+newAddApplicationInputProcessingConfiguration+  pApplicationName_+  pCurrentApplicationVersionId_+  pInputId_+  pInputProcessingConfiguration_ =+    AddApplicationInputProcessingConfiguration'+      { applicationName =+          pApplicationName_,+        currentApplicationVersionId =+          pCurrentApplicationVersionId_,+        inputId = pInputId_,+        inputProcessingConfiguration =+          pInputProcessingConfiguration_+      }++-- | The name of the application to which you want to add the input+-- processing configuration.+addApplicationInputProcessingConfiguration_applicationName :: Lens.Lens' AddApplicationInputProcessingConfiguration Prelude.Text+addApplicationInputProcessingConfiguration_applicationName = Lens.lens (\AddApplicationInputProcessingConfiguration' {applicationName} -> applicationName) (\s@AddApplicationInputProcessingConfiguration' {} a -> s {applicationName = a} :: AddApplicationInputProcessingConfiguration)++-- | The version of the application to which you want to add the input+-- processing configuration. You can use the DescribeApplication operation+-- to get the current application version. If the version specified is not+-- the current version, the @ConcurrentModificationException@ is returned.+addApplicationInputProcessingConfiguration_currentApplicationVersionId :: Lens.Lens' AddApplicationInputProcessingConfiguration Prelude.Natural+addApplicationInputProcessingConfiguration_currentApplicationVersionId = Lens.lens (\AddApplicationInputProcessingConfiguration' {currentApplicationVersionId} -> currentApplicationVersionId) (\s@AddApplicationInputProcessingConfiguration' {} a -> s {currentApplicationVersionId = a} :: AddApplicationInputProcessingConfiguration)++-- | The ID of the input configuration to add the input processing+-- configuration to. You can get a list of the input IDs for an application+-- using the DescribeApplication operation.+addApplicationInputProcessingConfiguration_inputId :: Lens.Lens' AddApplicationInputProcessingConfiguration Prelude.Text+addApplicationInputProcessingConfiguration_inputId = Lens.lens (\AddApplicationInputProcessingConfiguration' {inputId} -> inputId) (\s@AddApplicationInputProcessingConfiguration' {} a -> s {inputId = a} :: AddApplicationInputProcessingConfiguration)++-- | The InputProcessingConfiguration to add to the application.+addApplicationInputProcessingConfiguration_inputProcessingConfiguration :: Lens.Lens' AddApplicationInputProcessingConfiguration InputProcessingConfiguration+addApplicationInputProcessingConfiguration_inputProcessingConfiguration = Lens.lens (\AddApplicationInputProcessingConfiguration' {inputProcessingConfiguration} -> inputProcessingConfiguration) (\s@AddApplicationInputProcessingConfiguration' {} a -> s {inputProcessingConfiguration = a} :: AddApplicationInputProcessingConfiguration)++instance+  Core.AWSRequest+    AddApplicationInputProcessingConfiguration+  where+  type+    AWSResponse+      AddApplicationInputProcessingConfiguration =+      AddApplicationInputProcessingConfigurationResponse+  request overrides =+    Request.postJSON (overrides defaultService)+  response =+    Response.receiveJSON+      ( \s h x ->+          AddApplicationInputProcessingConfigurationResponse'+            Prelude.<$> (x Data..?> "ApplicationARN")+            Prelude.<*> (x Data..?> "ApplicationVersionId")+            Prelude.<*> (x Data..?> "InputId")+            Prelude.<*> ( x+                            Data..?> "InputProcessingConfigurationDescription"+                        )+            Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+      )++instance+  Prelude.Hashable+    AddApplicationInputProcessingConfiguration+  where+  hashWithSalt+    _salt+    AddApplicationInputProcessingConfiguration' {..} =+      _salt+        `Prelude.hashWithSalt` applicationName+        `Prelude.hashWithSalt` currentApplicationVersionId+        `Prelude.hashWithSalt` inputId+        `Prelude.hashWithSalt` inputProcessingConfiguration++instance+  Prelude.NFData+    AddApplicationInputProcessingConfiguration+  where+  rnf AddApplicationInputProcessingConfiguration' {..} =+    Prelude.rnf applicationName+      `Prelude.seq` Prelude.rnf currentApplicationVersionId+      `Prelude.seq` Prelude.rnf inputId+      `Prelude.seq` Prelude.rnf inputProcessingConfiguration++instance+  Data.ToHeaders+    AddApplicationInputProcessingConfiguration+  where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "X-Amz-Target"+              Data.=# ( "KinesisAnalytics_20180523.AddApplicationInputProcessingConfiguration" ::+                          Prelude.ByteString+                      ),+            "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance+  Data.ToJSON+    AddApplicationInputProcessingConfiguration+  where+  toJSON+    AddApplicationInputProcessingConfiguration' {..} =+      Data.object+        ( Prelude.catMaybes+            [ Prelude.Just+                ("ApplicationName" Data..= applicationName),+              Prelude.Just+                ( "CurrentApplicationVersionId"+                    Data..= currentApplicationVersionId+                ),+              Prelude.Just ("InputId" Data..= inputId),+              Prelude.Just+                ( "InputProcessingConfiguration"+                    Data..= inputProcessingConfiguration+                )+            ]+        )++instance+  Data.ToPath+    AddApplicationInputProcessingConfiguration+  where+  toPath = Prelude.const "/"++instance+  Data.ToQuery+    AddApplicationInputProcessingConfiguration+  where+  toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newAddApplicationInputProcessingConfigurationResponse' smart constructor.+data AddApplicationInputProcessingConfigurationResponse = AddApplicationInputProcessingConfigurationResponse'+  { -- | The Amazon Resource Name (ARN) of the application.+    applicationARN :: Prelude.Maybe Prelude.Text,+    -- | Provides the current application version.+    applicationVersionId :: Prelude.Maybe Prelude.Natural,+    -- | The input ID that is associated with the application input. This is the+    -- ID that Kinesis Data Analytics assigns to each input configuration that+    -- you add to your application.+    inputId :: Prelude.Maybe Prelude.Text,+    -- | The description of the preprocessor that executes on records in this+    -- input before the application\'s code is run.+    inputProcessingConfigurationDescription :: Prelude.Maybe InputProcessingConfigurationDescription,+    -- | The response's http status code.+    httpStatus :: Prelude.Int+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AddApplicationInputProcessingConfigurationResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applicationARN', 'addApplicationInputProcessingConfigurationResponse_applicationARN' - The Amazon Resource Name (ARN) of the application.+--+-- 'applicationVersionId', 'addApplicationInputProcessingConfigurationResponse_applicationVersionId' - Provides the current application version.+--+-- 'inputId', 'addApplicationInputProcessingConfigurationResponse_inputId' - The input ID that is associated with the application input. This is the+-- ID that Kinesis Data Analytics assigns to each input configuration that+-- you add to your application.+--+-- 'inputProcessingConfigurationDescription', 'addApplicationInputProcessingConfigurationResponse_inputProcessingConfigurationDescription' - The description of the preprocessor that executes on records in this+-- input before the application\'s code is run.+--+-- 'httpStatus', 'addApplicationInputProcessingConfigurationResponse_httpStatus' - The response's http status code.+newAddApplicationInputProcessingConfigurationResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  AddApplicationInputProcessingConfigurationResponse+newAddApplicationInputProcessingConfigurationResponse+  pHttpStatus_ =+    AddApplicationInputProcessingConfigurationResponse'+      { applicationARN =+          Prelude.Nothing,+        applicationVersionId =+          Prelude.Nothing,+        inputId =+          Prelude.Nothing,+        inputProcessingConfigurationDescription =+          Prelude.Nothing,+        httpStatus =+          pHttpStatus_+      }++-- | The Amazon Resource Name (ARN) of the application.+addApplicationInputProcessingConfigurationResponse_applicationARN :: Lens.Lens' AddApplicationInputProcessingConfigurationResponse (Prelude.Maybe Prelude.Text)+addApplicationInputProcessingConfigurationResponse_applicationARN = Lens.lens (\AddApplicationInputProcessingConfigurationResponse' {applicationARN} -> applicationARN) (\s@AddApplicationInputProcessingConfigurationResponse' {} a -> s {applicationARN = a} :: AddApplicationInputProcessingConfigurationResponse)++-- | Provides the current application version.+addApplicationInputProcessingConfigurationResponse_applicationVersionId :: Lens.Lens' AddApplicationInputProcessingConfigurationResponse (Prelude.Maybe Prelude.Natural)+addApplicationInputProcessingConfigurationResponse_applicationVersionId = Lens.lens (\AddApplicationInputProcessingConfigurationResponse' {applicationVersionId} -> applicationVersionId) (\s@AddApplicationInputProcessingConfigurationResponse' {} a -> s {applicationVersionId = a} :: AddApplicationInputProcessingConfigurationResponse)++-- | The input ID that is associated with the application input. This is the+-- ID that Kinesis Data Analytics assigns to each input configuration that+-- you add to your application.+addApplicationInputProcessingConfigurationResponse_inputId :: Lens.Lens' AddApplicationInputProcessingConfigurationResponse (Prelude.Maybe Prelude.Text)+addApplicationInputProcessingConfigurationResponse_inputId = Lens.lens (\AddApplicationInputProcessingConfigurationResponse' {inputId} -> inputId) (\s@AddApplicationInputProcessingConfigurationResponse' {} a -> s {inputId = a} :: AddApplicationInputProcessingConfigurationResponse)++-- | The description of the preprocessor that executes on records in this+-- input before the application\'s code is run.+addApplicationInputProcessingConfigurationResponse_inputProcessingConfigurationDescription :: Lens.Lens' AddApplicationInputProcessingConfigurationResponse (Prelude.Maybe InputProcessingConfigurationDescription)+addApplicationInputProcessingConfigurationResponse_inputProcessingConfigurationDescription = Lens.lens (\AddApplicationInputProcessingConfigurationResponse' {inputProcessingConfigurationDescription} -> inputProcessingConfigurationDescription) (\s@AddApplicationInputProcessingConfigurationResponse' {} a -> s {inputProcessingConfigurationDescription = a} :: AddApplicationInputProcessingConfigurationResponse)++-- | The response's http status code.+addApplicationInputProcessingConfigurationResponse_httpStatus :: Lens.Lens' AddApplicationInputProcessingConfigurationResponse Prelude.Int+addApplicationInputProcessingConfigurationResponse_httpStatus = Lens.lens (\AddApplicationInputProcessingConfigurationResponse' {httpStatus} -> httpStatus) (\s@AddApplicationInputProcessingConfigurationResponse' {} a -> s {httpStatus = a} :: AddApplicationInputProcessingConfigurationResponse)++instance+  Prelude.NFData+    AddApplicationInputProcessingConfigurationResponse+  where+  rnf+    AddApplicationInputProcessingConfigurationResponse' {..} =+      Prelude.rnf applicationARN+        `Prelude.seq` Prelude.rnf applicationVersionId+        `Prelude.seq` Prelude.rnf inputId+        `Prelude.seq` Prelude.rnf inputProcessingConfigurationDescription+        `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/KinesisAnalyticsV2/AddApplicationOutput.hs view
@@ -0,0 +1,289 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.KinesisAnalyticsV2.AddApplicationOutput+-- 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 an external destination to your SQL-based Kinesis Data Analytics+-- application.+--+-- If you want Kinesis Data Analytics to deliver data from an+-- in-application stream within your application to an external destination+-- (such as an Kinesis data stream, a Kinesis Data Firehose delivery+-- stream, or an Amazon Lambda function), you add the relevant+-- configuration to your application using this operation. You can+-- configure one or more outputs for your application. Each output+-- configuration maps an in-application stream and an external destination.+--+-- You can use one of the output configurations to deliver data from your+-- in-application error stream to an external destination so that you can+-- analyze the errors.+--+-- Any configuration update, including adding a streaming source using this+-- operation, results in a new version of the application. You can use the+-- DescribeApplication operation to find the current application version.+module Amazonka.KinesisAnalyticsV2.AddApplicationOutput+  ( -- * Creating a Request+    AddApplicationOutput (..),+    newAddApplicationOutput,++    -- * Request Lenses+    addApplicationOutput_applicationName,+    addApplicationOutput_currentApplicationVersionId,+    addApplicationOutput_output,++    -- * Destructuring the Response+    AddApplicationOutputResponse (..),+    newAddApplicationOutputResponse,++    -- * Response Lenses+    addApplicationOutputResponse_applicationARN,+    addApplicationOutputResponse_applicationVersionId,+    addApplicationOutputResponse_outputDescriptions,+    addApplicationOutputResponse_httpStatus,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newAddApplicationOutput' smart constructor.+data AddApplicationOutput = AddApplicationOutput'+  { -- | The name of the application to which you want to add the output+    -- configuration.+    applicationName :: Prelude.Text,+    -- | The version of the application to which you want to add the output+    -- configuration. You can use the DescribeApplication operation to get the+    -- current application version. If the version specified is not the current+    -- version, the @ConcurrentModificationException@ is returned.+    currentApplicationVersionId :: Prelude.Natural,+    -- | An array of objects, each describing one output configuration. In the+    -- output configuration, you specify the name of an in-application stream,+    -- a destination (that is, a Kinesis data stream, a Kinesis Data Firehose+    -- delivery stream, or an Amazon Lambda function), and record the formation+    -- to use when writing to the destination.+    output :: Output+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AddApplicationOutput' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applicationName', 'addApplicationOutput_applicationName' - The name of the application to which you want to add the output+-- configuration.+--+-- 'currentApplicationVersionId', 'addApplicationOutput_currentApplicationVersionId' - The version of the application to which you want to add the output+-- configuration. You can use the DescribeApplication operation to get the+-- current application version. If the version specified is not the current+-- version, the @ConcurrentModificationException@ is returned.+--+-- 'output', 'addApplicationOutput_output' - An array of objects, each describing one output configuration. In the+-- output configuration, you specify the name of an in-application stream,+-- a destination (that is, a Kinesis data stream, a Kinesis Data Firehose+-- delivery stream, or an Amazon Lambda function), and record the formation+-- to use when writing to the destination.+newAddApplicationOutput ::+  -- | 'applicationName'+  Prelude.Text ->+  -- | 'currentApplicationVersionId'+  Prelude.Natural ->+  -- | 'output'+  Output ->+  AddApplicationOutput+newAddApplicationOutput+  pApplicationName_+  pCurrentApplicationVersionId_+  pOutput_ =+    AddApplicationOutput'+      { applicationName =+          pApplicationName_,+        currentApplicationVersionId =+          pCurrentApplicationVersionId_,+        output = pOutput_+      }++-- | The name of the application to which you want to add the output+-- configuration.+addApplicationOutput_applicationName :: Lens.Lens' AddApplicationOutput Prelude.Text+addApplicationOutput_applicationName = Lens.lens (\AddApplicationOutput' {applicationName} -> applicationName) (\s@AddApplicationOutput' {} a -> s {applicationName = a} :: AddApplicationOutput)++-- | The version of the application to which you want to add the output+-- configuration. You can use the DescribeApplication operation to get the+-- current application version. If the version specified is not the current+-- version, the @ConcurrentModificationException@ is returned.+addApplicationOutput_currentApplicationVersionId :: Lens.Lens' AddApplicationOutput Prelude.Natural+addApplicationOutput_currentApplicationVersionId = Lens.lens (\AddApplicationOutput' {currentApplicationVersionId} -> currentApplicationVersionId) (\s@AddApplicationOutput' {} a -> s {currentApplicationVersionId = a} :: AddApplicationOutput)++-- | An array of objects, each describing one output configuration. In the+-- output configuration, you specify the name of an in-application stream,+-- a destination (that is, a Kinesis data stream, a Kinesis Data Firehose+-- delivery stream, or an Amazon Lambda function), and record the formation+-- to use when writing to the destination.+addApplicationOutput_output :: Lens.Lens' AddApplicationOutput Output+addApplicationOutput_output = Lens.lens (\AddApplicationOutput' {output} -> output) (\s@AddApplicationOutput' {} a -> s {output = a} :: AddApplicationOutput)++instance Core.AWSRequest AddApplicationOutput where+  type+    AWSResponse AddApplicationOutput =+      AddApplicationOutputResponse+  request overrides =+    Request.postJSON (overrides defaultService)+  response =+    Response.receiveJSON+      ( \s h x ->+          AddApplicationOutputResponse'+            Prelude.<$> (x Data..?> "ApplicationARN")+            Prelude.<*> (x Data..?> "ApplicationVersionId")+            Prelude.<*> ( x+                            Data..?> "OutputDescriptions"+                            Core..!@ Prelude.mempty+                        )+            Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+      )++instance Prelude.Hashable AddApplicationOutput where+  hashWithSalt _salt AddApplicationOutput' {..} =+    _salt+      `Prelude.hashWithSalt` applicationName+      `Prelude.hashWithSalt` currentApplicationVersionId+      `Prelude.hashWithSalt` output++instance Prelude.NFData AddApplicationOutput where+  rnf AddApplicationOutput' {..} =+    Prelude.rnf applicationName+      `Prelude.seq` Prelude.rnf currentApplicationVersionId+      `Prelude.seq` Prelude.rnf output++instance Data.ToHeaders AddApplicationOutput where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "X-Amz-Target"+              Data.=# ( "KinesisAnalytics_20180523.AddApplicationOutput" ::+                          Prelude.ByteString+                      ),+            "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance Data.ToJSON AddApplicationOutput where+  toJSON AddApplicationOutput' {..} =+    Data.object+      ( Prelude.catMaybes+          [ Prelude.Just+              ("ApplicationName" Data..= applicationName),+            Prelude.Just+              ( "CurrentApplicationVersionId"+                  Data..= currentApplicationVersionId+              ),+            Prelude.Just ("Output" Data..= output)+          ]+      )++instance Data.ToPath AddApplicationOutput where+  toPath = Prelude.const "/"++instance Data.ToQuery AddApplicationOutput where+  toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newAddApplicationOutputResponse' smart constructor.+data AddApplicationOutputResponse = AddApplicationOutputResponse'+  { -- | The application Amazon Resource Name (ARN).+    applicationARN :: Prelude.Maybe Prelude.Text,+    -- | The updated application version ID. Kinesis Data Analytics increments+    -- this ID when the application is updated.+    applicationVersionId :: Prelude.Maybe Prelude.Natural,+    -- | Describes the application output configuration. For more information,+    -- see+    -- <https://docs.aws.amazon.com/kinesisanalytics/latest/dev/how-it-works-output.html Configuring Application Output>.+    outputDescriptions :: Prelude.Maybe [OutputDescription],+    -- | The response's http status code.+    httpStatus :: Prelude.Int+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AddApplicationOutputResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applicationARN', 'addApplicationOutputResponse_applicationARN' - The application Amazon Resource Name (ARN).+--+-- 'applicationVersionId', 'addApplicationOutputResponse_applicationVersionId' - The updated application version ID. Kinesis Data Analytics increments+-- this ID when the application is updated.+--+-- 'outputDescriptions', 'addApplicationOutputResponse_outputDescriptions' - Describes the application output configuration. For more information,+-- see+-- <https://docs.aws.amazon.com/kinesisanalytics/latest/dev/how-it-works-output.html Configuring Application Output>.+--+-- 'httpStatus', 'addApplicationOutputResponse_httpStatus' - The response's http status code.+newAddApplicationOutputResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  AddApplicationOutputResponse+newAddApplicationOutputResponse pHttpStatus_ =+  AddApplicationOutputResponse'+    { applicationARN =+        Prelude.Nothing,+      applicationVersionId = Prelude.Nothing,+      outputDescriptions = Prelude.Nothing,+      httpStatus = pHttpStatus_+    }++-- | The application Amazon Resource Name (ARN).+addApplicationOutputResponse_applicationARN :: Lens.Lens' AddApplicationOutputResponse (Prelude.Maybe Prelude.Text)+addApplicationOutputResponse_applicationARN = Lens.lens (\AddApplicationOutputResponse' {applicationARN} -> applicationARN) (\s@AddApplicationOutputResponse' {} a -> s {applicationARN = a} :: AddApplicationOutputResponse)++-- | The updated application version ID. Kinesis Data Analytics increments+-- this ID when the application is updated.+addApplicationOutputResponse_applicationVersionId :: Lens.Lens' AddApplicationOutputResponse (Prelude.Maybe Prelude.Natural)+addApplicationOutputResponse_applicationVersionId = Lens.lens (\AddApplicationOutputResponse' {applicationVersionId} -> applicationVersionId) (\s@AddApplicationOutputResponse' {} a -> s {applicationVersionId = a} :: AddApplicationOutputResponse)++-- | Describes the application output configuration. For more information,+-- see+-- <https://docs.aws.amazon.com/kinesisanalytics/latest/dev/how-it-works-output.html Configuring Application Output>.+addApplicationOutputResponse_outputDescriptions :: Lens.Lens' AddApplicationOutputResponse (Prelude.Maybe [OutputDescription])+addApplicationOutputResponse_outputDescriptions = Lens.lens (\AddApplicationOutputResponse' {outputDescriptions} -> outputDescriptions) (\s@AddApplicationOutputResponse' {} a -> s {outputDescriptions = a} :: AddApplicationOutputResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+addApplicationOutputResponse_httpStatus :: Lens.Lens' AddApplicationOutputResponse Prelude.Int+addApplicationOutputResponse_httpStatus = Lens.lens (\AddApplicationOutputResponse' {httpStatus} -> httpStatus) (\s@AddApplicationOutputResponse' {} a -> s {httpStatus = a} :: AddApplicationOutputResponse)++instance Prelude.NFData AddApplicationOutputResponse where+  rnf AddApplicationOutputResponse' {..} =+    Prelude.rnf applicationARN+      `Prelude.seq` Prelude.rnf applicationVersionId+      `Prelude.seq` Prelude.rnf outputDescriptions+      `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/KinesisAnalyticsV2/AddApplicationReferenceDataSource.hs view
@@ -0,0 +1,299 @@+{-# 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.KinesisAnalyticsV2.AddApplicationReferenceDataSource+-- 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 a reference data source to an existing SQL-based Kinesis Data+-- Analytics application.+--+-- Kinesis Data Analytics reads reference data (that is, an Amazon S3+-- object) and creates an in-application table within your application. In+-- the request, you provide the source (S3 bucket name and object key+-- name), name of the in-application table to create, and the necessary+-- mapping information that describes how data in an Amazon S3 object maps+-- to columns in the resulting in-application table.+module Amazonka.KinesisAnalyticsV2.AddApplicationReferenceDataSource+  ( -- * Creating a Request+    AddApplicationReferenceDataSource (..),+    newAddApplicationReferenceDataSource,++    -- * Request Lenses+    addApplicationReferenceDataSource_applicationName,+    addApplicationReferenceDataSource_currentApplicationVersionId,+    addApplicationReferenceDataSource_referenceDataSource,++    -- * Destructuring the Response+    AddApplicationReferenceDataSourceResponse (..),+    newAddApplicationReferenceDataSourceResponse,++    -- * Response Lenses+    addApplicationReferenceDataSourceResponse_applicationARN,+    addApplicationReferenceDataSourceResponse_applicationVersionId,+    addApplicationReferenceDataSourceResponse_referenceDataSourceDescriptions,+    addApplicationReferenceDataSourceResponse_httpStatus,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newAddApplicationReferenceDataSource' smart constructor.+data AddApplicationReferenceDataSource = AddApplicationReferenceDataSource'+  { -- | The name of an existing application.+    applicationName :: Prelude.Text,+    -- | The version of the application for which you are adding the reference+    -- data source. You can use the DescribeApplication operation to get the+    -- current application version. If the version specified is not the current+    -- version, the @ConcurrentModificationException@ is returned.+    currentApplicationVersionId :: Prelude.Natural,+    -- | The reference data source can be an object in your Amazon S3 bucket.+    -- Kinesis Data Analytics reads the object and copies the data into the+    -- in-application table that is created. You provide an S3 bucket, object+    -- key name, and the resulting in-application table that is created.+    referenceDataSource :: ReferenceDataSource+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AddApplicationReferenceDataSource' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applicationName', 'addApplicationReferenceDataSource_applicationName' - The name of an existing application.+--+-- 'currentApplicationVersionId', 'addApplicationReferenceDataSource_currentApplicationVersionId' - The version of the application for which you are adding the reference+-- data source. You can use the DescribeApplication operation to get the+-- current application version. If the version specified is not the current+-- version, the @ConcurrentModificationException@ is returned.+--+-- 'referenceDataSource', 'addApplicationReferenceDataSource_referenceDataSource' - The reference data source can be an object in your Amazon S3 bucket.+-- Kinesis Data Analytics reads the object and copies the data into the+-- in-application table that is created. You provide an S3 bucket, object+-- key name, and the resulting in-application table that is created.+newAddApplicationReferenceDataSource ::+  -- | 'applicationName'+  Prelude.Text ->+  -- | 'currentApplicationVersionId'+  Prelude.Natural ->+  -- | 'referenceDataSource'+  ReferenceDataSource ->+  AddApplicationReferenceDataSource+newAddApplicationReferenceDataSource+  pApplicationName_+  pCurrentApplicationVersionId_+  pReferenceDataSource_ =+    AddApplicationReferenceDataSource'+      { applicationName =+          pApplicationName_,+        currentApplicationVersionId =+          pCurrentApplicationVersionId_,+        referenceDataSource =+          pReferenceDataSource_+      }++-- | The name of an existing application.+addApplicationReferenceDataSource_applicationName :: Lens.Lens' AddApplicationReferenceDataSource Prelude.Text+addApplicationReferenceDataSource_applicationName = Lens.lens (\AddApplicationReferenceDataSource' {applicationName} -> applicationName) (\s@AddApplicationReferenceDataSource' {} a -> s {applicationName = a} :: AddApplicationReferenceDataSource)++-- | The version of the application for which you are adding the reference+-- data source. You can use the DescribeApplication operation to get the+-- current application version. If the version specified is not the current+-- version, the @ConcurrentModificationException@ is returned.+addApplicationReferenceDataSource_currentApplicationVersionId :: Lens.Lens' AddApplicationReferenceDataSource Prelude.Natural+addApplicationReferenceDataSource_currentApplicationVersionId = Lens.lens (\AddApplicationReferenceDataSource' {currentApplicationVersionId} -> currentApplicationVersionId) (\s@AddApplicationReferenceDataSource' {} a -> s {currentApplicationVersionId = a} :: AddApplicationReferenceDataSource)++-- | The reference data source can be an object in your Amazon S3 bucket.+-- Kinesis Data Analytics reads the object and copies the data into the+-- in-application table that is created. You provide an S3 bucket, object+-- key name, and the resulting in-application table that is created.+addApplicationReferenceDataSource_referenceDataSource :: Lens.Lens' AddApplicationReferenceDataSource ReferenceDataSource+addApplicationReferenceDataSource_referenceDataSource = Lens.lens (\AddApplicationReferenceDataSource' {referenceDataSource} -> referenceDataSource) (\s@AddApplicationReferenceDataSource' {} a -> s {referenceDataSource = a} :: AddApplicationReferenceDataSource)++instance+  Core.AWSRequest+    AddApplicationReferenceDataSource+  where+  type+    AWSResponse AddApplicationReferenceDataSource =+      AddApplicationReferenceDataSourceResponse+  request overrides =+    Request.postJSON (overrides defaultService)+  response =+    Response.receiveJSON+      ( \s h x ->+          AddApplicationReferenceDataSourceResponse'+            Prelude.<$> (x Data..?> "ApplicationARN")+            Prelude.<*> (x Data..?> "ApplicationVersionId")+            Prelude.<*> ( x+                            Data..?> "ReferenceDataSourceDescriptions"+                            Core..!@ Prelude.mempty+                        )+            Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+      )++instance+  Prelude.Hashable+    AddApplicationReferenceDataSource+  where+  hashWithSalt+    _salt+    AddApplicationReferenceDataSource' {..} =+      _salt+        `Prelude.hashWithSalt` applicationName+        `Prelude.hashWithSalt` currentApplicationVersionId+        `Prelude.hashWithSalt` referenceDataSource++instance+  Prelude.NFData+    AddApplicationReferenceDataSource+  where+  rnf AddApplicationReferenceDataSource' {..} =+    Prelude.rnf applicationName+      `Prelude.seq` Prelude.rnf currentApplicationVersionId+      `Prelude.seq` Prelude.rnf referenceDataSource++instance+  Data.ToHeaders+    AddApplicationReferenceDataSource+  where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "X-Amz-Target"+              Data.=# ( "KinesisAnalytics_20180523.AddApplicationReferenceDataSource" ::+                          Prelude.ByteString+                      ),+            "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance+  Data.ToJSON+    AddApplicationReferenceDataSource+  where+  toJSON AddApplicationReferenceDataSource' {..} =+    Data.object+      ( Prelude.catMaybes+          [ Prelude.Just+              ("ApplicationName" Data..= applicationName),+            Prelude.Just+              ( "CurrentApplicationVersionId"+                  Data..= currentApplicationVersionId+              ),+            Prelude.Just+              ("ReferenceDataSource" Data..= referenceDataSource)+          ]+      )++instance+  Data.ToPath+    AddApplicationReferenceDataSource+  where+  toPath = Prelude.const "/"++instance+  Data.ToQuery+    AddApplicationReferenceDataSource+  where+  toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newAddApplicationReferenceDataSourceResponse' smart constructor.+data AddApplicationReferenceDataSourceResponse = AddApplicationReferenceDataSourceResponse'+  { -- | The application Amazon Resource Name (ARN).+    applicationARN :: Prelude.Maybe Prelude.Text,+    -- | The updated application version ID. Kinesis Data Analytics increments+    -- this ID when the application is updated.+    applicationVersionId :: Prelude.Maybe Prelude.Natural,+    -- | Describes reference data sources configured for the application.+    referenceDataSourceDescriptions :: Prelude.Maybe [ReferenceDataSourceDescription],+    -- | The response's http status code.+    httpStatus :: Prelude.Int+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AddApplicationReferenceDataSourceResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applicationARN', 'addApplicationReferenceDataSourceResponse_applicationARN' - The application Amazon Resource Name (ARN).+--+-- 'applicationVersionId', 'addApplicationReferenceDataSourceResponse_applicationVersionId' - The updated application version ID. Kinesis Data Analytics increments+-- this ID when the application is updated.+--+-- 'referenceDataSourceDescriptions', 'addApplicationReferenceDataSourceResponse_referenceDataSourceDescriptions' - Describes reference data sources configured for the application.+--+-- 'httpStatus', 'addApplicationReferenceDataSourceResponse_httpStatus' - The response's http status code.+newAddApplicationReferenceDataSourceResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  AddApplicationReferenceDataSourceResponse+newAddApplicationReferenceDataSourceResponse+  pHttpStatus_ =+    AddApplicationReferenceDataSourceResponse'+      { applicationARN =+          Prelude.Nothing,+        applicationVersionId =+          Prelude.Nothing,+        referenceDataSourceDescriptions =+          Prelude.Nothing,+        httpStatus = pHttpStatus_+      }++-- | The application Amazon Resource Name (ARN).+addApplicationReferenceDataSourceResponse_applicationARN :: Lens.Lens' AddApplicationReferenceDataSourceResponse (Prelude.Maybe Prelude.Text)+addApplicationReferenceDataSourceResponse_applicationARN = Lens.lens (\AddApplicationReferenceDataSourceResponse' {applicationARN} -> applicationARN) (\s@AddApplicationReferenceDataSourceResponse' {} a -> s {applicationARN = a} :: AddApplicationReferenceDataSourceResponse)++-- | The updated application version ID. Kinesis Data Analytics increments+-- this ID when the application is updated.+addApplicationReferenceDataSourceResponse_applicationVersionId :: Lens.Lens' AddApplicationReferenceDataSourceResponse (Prelude.Maybe Prelude.Natural)+addApplicationReferenceDataSourceResponse_applicationVersionId = Lens.lens (\AddApplicationReferenceDataSourceResponse' {applicationVersionId} -> applicationVersionId) (\s@AddApplicationReferenceDataSourceResponse' {} a -> s {applicationVersionId = a} :: AddApplicationReferenceDataSourceResponse)++-- | Describes reference data sources configured for the application.+addApplicationReferenceDataSourceResponse_referenceDataSourceDescriptions :: Lens.Lens' AddApplicationReferenceDataSourceResponse (Prelude.Maybe [ReferenceDataSourceDescription])+addApplicationReferenceDataSourceResponse_referenceDataSourceDescriptions = Lens.lens (\AddApplicationReferenceDataSourceResponse' {referenceDataSourceDescriptions} -> referenceDataSourceDescriptions) (\s@AddApplicationReferenceDataSourceResponse' {} a -> s {referenceDataSourceDescriptions = a} :: AddApplicationReferenceDataSourceResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+addApplicationReferenceDataSourceResponse_httpStatus :: Lens.Lens' AddApplicationReferenceDataSourceResponse Prelude.Int+addApplicationReferenceDataSourceResponse_httpStatus = Lens.lens (\AddApplicationReferenceDataSourceResponse' {httpStatus} -> httpStatus) (\s@AddApplicationReferenceDataSourceResponse' {} a -> s {httpStatus = a} :: AddApplicationReferenceDataSourceResponse)++instance+  Prelude.NFData+    AddApplicationReferenceDataSourceResponse+  where+  rnf AddApplicationReferenceDataSourceResponse' {..} =+    Prelude.rnf applicationARN+      `Prelude.seq` Prelude.rnf applicationVersionId+      `Prelude.seq` Prelude.rnf referenceDataSourceDescriptions+      `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/KinesisAnalyticsV2/AddApplicationVpcConfiguration.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.KinesisAnalyticsV2.AddApplicationVpcConfiguration+-- 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 a Virtual Private Cloud (VPC) configuration to the application.+-- Applications can use VPCs to store and access resources securely.+--+-- Note the following about VPC configurations for Kinesis Data Analytics+-- applications:+--+-- -   VPC configurations are not supported for SQL applications.+--+-- -   When a VPC is added to a Kinesis Data Analytics application, the+--     application can no longer be accessed from the Internet directly. To+--     enable Internet access to the application, add an Internet gateway+--     to your VPC.+module Amazonka.KinesisAnalyticsV2.AddApplicationVpcConfiguration+  ( -- * Creating a Request+    AddApplicationVpcConfiguration (..),+    newAddApplicationVpcConfiguration,++    -- * Request Lenses+    addApplicationVpcConfiguration_conditionalToken,+    addApplicationVpcConfiguration_currentApplicationVersionId,+    addApplicationVpcConfiguration_applicationName,+    addApplicationVpcConfiguration_vpcConfiguration,++    -- * Destructuring the Response+    AddApplicationVpcConfigurationResponse (..),+    newAddApplicationVpcConfigurationResponse,++    -- * Response Lenses+    addApplicationVpcConfigurationResponse_applicationARN,+    addApplicationVpcConfigurationResponse_applicationVersionId,+    addApplicationVpcConfigurationResponse_vpcConfigurationDescription,+    addApplicationVpcConfigurationResponse_httpStatus,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newAddApplicationVpcConfiguration' smart constructor.+data AddApplicationVpcConfiguration = AddApplicationVpcConfiguration'+  { -- | A value you use to implement strong concurrency for application updates.+    -- You must provide the @ApplicationVersionID@ or the @ConditionalToken@.+    -- You get the application\'s current @ConditionalToken@ using+    -- DescribeApplication. For better concurrency support, use the+    -- @ConditionalToken@ parameter instead of @CurrentApplicationVersionId@.+    conditionalToken :: Prelude.Maybe Prelude.Text,+    -- | The version of the application to which you want to add the VPC+    -- configuration. You must provide the @CurrentApplicationVersionId@ or the+    -- @ConditionalToken@. You can use the DescribeApplication operation to get+    -- the current application version. If the version specified is not the+    -- current version, the @ConcurrentModificationException@ is returned. For+    -- better concurrency support, use the @ConditionalToken@ parameter instead+    -- of @CurrentApplicationVersionId@.+    currentApplicationVersionId :: Prelude.Maybe Prelude.Natural,+    -- | The name of an existing application.+    applicationName :: Prelude.Text,+    -- | Description of the VPC to add to the application.+    vpcConfiguration :: VpcConfiguration+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AddApplicationVpcConfiguration' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'conditionalToken', 'addApplicationVpcConfiguration_conditionalToken' - A value you use to implement strong concurrency for application updates.+-- You must provide the @ApplicationVersionID@ or the @ConditionalToken@.+-- You get the application\'s current @ConditionalToken@ using+-- DescribeApplication. For better concurrency support, use the+-- @ConditionalToken@ parameter instead of @CurrentApplicationVersionId@.+--+-- 'currentApplicationVersionId', 'addApplicationVpcConfiguration_currentApplicationVersionId' - The version of the application to which you want to add the VPC+-- configuration. You must provide the @CurrentApplicationVersionId@ or the+-- @ConditionalToken@. You can use the DescribeApplication operation to get+-- the current application version. If the version specified is not the+-- current version, the @ConcurrentModificationException@ is returned. For+-- better concurrency support, use the @ConditionalToken@ parameter instead+-- of @CurrentApplicationVersionId@.+--+-- 'applicationName', 'addApplicationVpcConfiguration_applicationName' - The name of an existing application.+--+-- 'vpcConfiguration', 'addApplicationVpcConfiguration_vpcConfiguration' - Description of the VPC to add to the application.+newAddApplicationVpcConfiguration ::+  -- | 'applicationName'+  Prelude.Text ->+  -- | 'vpcConfiguration'+  VpcConfiguration ->+  AddApplicationVpcConfiguration+newAddApplicationVpcConfiguration+  pApplicationName_+  pVpcConfiguration_ =+    AddApplicationVpcConfiguration'+      { conditionalToken =+          Prelude.Nothing,+        currentApplicationVersionId =+          Prelude.Nothing,+        applicationName = pApplicationName_,+        vpcConfiguration = pVpcConfiguration_+      }++-- | A value you use to implement strong concurrency for application updates.+-- You must provide the @ApplicationVersionID@ or the @ConditionalToken@.+-- You get the application\'s current @ConditionalToken@ using+-- DescribeApplication. For better concurrency support, use the+-- @ConditionalToken@ parameter instead of @CurrentApplicationVersionId@.+addApplicationVpcConfiguration_conditionalToken :: Lens.Lens' AddApplicationVpcConfiguration (Prelude.Maybe Prelude.Text)+addApplicationVpcConfiguration_conditionalToken = Lens.lens (\AddApplicationVpcConfiguration' {conditionalToken} -> conditionalToken) (\s@AddApplicationVpcConfiguration' {} a -> s {conditionalToken = a} :: AddApplicationVpcConfiguration)++-- | The version of the application to which you want to add the VPC+-- configuration. You must provide the @CurrentApplicationVersionId@ or the+-- @ConditionalToken@. You can use the DescribeApplication operation to get+-- the current application version. If the version specified is not the+-- current version, the @ConcurrentModificationException@ is returned. For+-- better concurrency support, use the @ConditionalToken@ parameter instead+-- of @CurrentApplicationVersionId@.+addApplicationVpcConfiguration_currentApplicationVersionId :: Lens.Lens' AddApplicationVpcConfiguration (Prelude.Maybe Prelude.Natural)+addApplicationVpcConfiguration_currentApplicationVersionId = Lens.lens (\AddApplicationVpcConfiguration' {currentApplicationVersionId} -> currentApplicationVersionId) (\s@AddApplicationVpcConfiguration' {} a -> s {currentApplicationVersionId = a} :: AddApplicationVpcConfiguration)++-- | The name of an existing application.+addApplicationVpcConfiguration_applicationName :: Lens.Lens' AddApplicationVpcConfiguration Prelude.Text+addApplicationVpcConfiguration_applicationName = Lens.lens (\AddApplicationVpcConfiguration' {applicationName} -> applicationName) (\s@AddApplicationVpcConfiguration' {} a -> s {applicationName = a} :: AddApplicationVpcConfiguration)++-- | Description of the VPC to add to the application.+addApplicationVpcConfiguration_vpcConfiguration :: Lens.Lens' AddApplicationVpcConfiguration VpcConfiguration+addApplicationVpcConfiguration_vpcConfiguration = Lens.lens (\AddApplicationVpcConfiguration' {vpcConfiguration} -> vpcConfiguration) (\s@AddApplicationVpcConfiguration' {} a -> s {vpcConfiguration = a} :: AddApplicationVpcConfiguration)++instance+  Core.AWSRequest+    AddApplicationVpcConfiguration+  where+  type+    AWSResponse AddApplicationVpcConfiguration =+      AddApplicationVpcConfigurationResponse+  request overrides =+    Request.postJSON (overrides defaultService)+  response =+    Response.receiveJSON+      ( \s h x ->+          AddApplicationVpcConfigurationResponse'+            Prelude.<$> (x Data..?> "ApplicationARN")+            Prelude.<*> (x Data..?> "ApplicationVersionId")+            Prelude.<*> (x Data..?> "VpcConfigurationDescription")+            Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+      )++instance+  Prelude.Hashable+    AddApplicationVpcConfiguration+  where+  hashWithSalt+    _salt+    AddApplicationVpcConfiguration' {..} =+      _salt+        `Prelude.hashWithSalt` conditionalToken+        `Prelude.hashWithSalt` currentApplicationVersionId+        `Prelude.hashWithSalt` applicationName+        `Prelude.hashWithSalt` vpcConfiguration++instance+  Prelude.NFData+    AddApplicationVpcConfiguration+  where+  rnf AddApplicationVpcConfiguration' {..} =+    Prelude.rnf conditionalToken+      `Prelude.seq` Prelude.rnf currentApplicationVersionId+      `Prelude.seq` Prelude.rnf applicationName+      `Prelude.seq` Prelude.rnf vpcConfiguration++instance+  Data.ToHeaders+    AddApplicationVpcConfiguration+  where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "X-Amz-Target"+              Data.=# ( "KinesisAnalytics_20180523.AddApplicationVpcConfiguration" ::+                          Prelude.ByteString+                      ),+            "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance Data.ToJSON AddApplicationVpcConfiguration where+  toJSON AddApplicationVpcConfiguration' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("ConditionalToken" Data..=)+              Prelude.<$> conditionalToken,+            ("CurrentApplicationVersionId" Data..=)+              Prelude.<$> currentApplicationVersionId,+            Prelude.Just+              ("ApplicationName" Data..= applicationName),+            Prelude.Just+              ("VpcConfiguration" Data..= vpcConfiguration)+          ]+      )++instance Data.ToPath AddApplicationVpcConfiguration where+  toPath = Prelude.const "/"++instance Data.ToQuery AddApplicationVpcConfiguration where+  toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newAddApplicationVpcConfigurationResponse' smart constructor.+data AddApplicationVpcConfigurationResponse = AddApplicationVpcConfigurationResponse'+  { -- | The ARN of the application.+    applicationARN :: Prelude.Maybe Prelude.Text,+    -- | Provides the current application version. Kinesis Data Analytics updates+    -- the ApplicationVersionId each time you update the application.+    applicationVersionId :: Prelude.Maybe Prelude.Natural,+    -- | The parameters of the new VPC configuration.+    vpcConfigurationDescription :: Prelude.Maybe VpcConfigurationDescription,+    -- | The response's http status code.+    httpStatus :: Prelude.Int+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AddApplicationVpcConfigurationResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applicationARN', 'addApplicationVpcConfigurationResponse_applicationARN' - The ARN of the application.+--+-- 'applicationVersionId', 'addApplicationVpcConfigurationResponse_applicationVersionId' - Provides the current application version. Kinesis Data Analytics updates+-- the ApplicationVersionId each time you update the application.+--+-- 'vpcConfigurationDescription', 'addApplicationVpcConfigurationResponse_vpcConfigurationDescription' - The parameters of the new VPC configuration.+--+-- 'httpStatus', 'addApplicationVpcConfigurationResponse_httpStatus' - The response's http status code.+newAddApplicationVpcConfigurationResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  AddApplicationVpcConfigurationResponse+newAddApplicationVpcConfigurationResponse+  pHttpStatus_ =+    AddApplicationVpcConfigurationResponse'+      { applicationARN =+          Prelude.Nothing,+        applicationVersionId =+          Prelude.Nothing,+        vpcConfigurationDescription =+          Prelude.Nothing,+        httpStatus = pHttpStatus_+      }++-- | The ARN of the application.+addApplicationVpcConfigurationResponse_applicationARN :: Lens.Lens' AddApplicationVpcConfigurationResponse (Prelude.Maybe Prelude.Text)+addApplicationVpcConfigurationResponse_applicationARN = Lens.lens (\AddApplicationVpcConfigurationResponse' {applicationARN} -> applicationARN) (\s@AddApplicationVpcConfigurationResponse' {} a -> s {applicationARN = a} :: AddApplicationVpcConfigurationResponse)++-- | Provides the current application version. Kinesis Data Analytics updates+-- the ApplicationVersionId each time you update the application.+addApplicationVpcConfigurationResponse_applicationVersionId :: Lens.Lens' AddApplicationVpcConfigurationResponse (Prelude.Maybe Prelude.Natural)+addApplicationVpcConfigurationResponse_applicationVersionId = Lens.lens (\AddApplicationVpcConfigurationResponse' {applicationVersionId} -> applicationVersionId) (\s@AddApplicationVpcConfigurationResponse' {} a -> s {applicationVersionId = a} :: AddApplicationVpcConfigurationResponse)++-- | The parameters of the new VPC configuration.+addApplicationVpcConfigurationResponse_vpcConfigurationDescription :: Lens.Lens' AddApplicationVpcConfigurationResponse (Prelude.Maybe VpcConfigurationDescription)+addApplicationVpcConfigurationResponse_vpcConfigurationDescription = Lens.lens (\AddApplicationVpcConfigurationResponse' {vpcConfigurationDescription} -> vpcConfigurationDescription) (\s@AddApplicationVpcConfigurationResponse' {} a -> s {vpcConfigurationDescription = a} :: AddApplicationVpcConfigurationResponse)++-- | The response's http status code.+addApplicationVpcConfigurationResponse_httpStatus :: Lens.Lens' AddApplicationVpcConfigurationResponse Prelude.Int+addApplicationVpcConfigurationResponse_httpStatus = Lens.lens (\AddApplicationVpcConfigurationResponse' {httpStatus} -> httpStatus) (\s@AddApplicationVpcConfigurationResponse' {} a -> s {httpStatus = a} :: AddApplicationVpcConfigurationResponse)++instance+  Prelude.NFData+    AddApplicationVpcConfigurationResponse+  where+  rnf AddApplicationVpcConfigurationResponse' {..} =+    Prelude.rnf applicationARN+      `Prelude.seq` Prelude.rnf applicationVersionId+      `Prelude.seq` Prelude.rnf vpcConfigurationDescription+      `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/KinesisAnalyticsV2/CreateApplication.hs view
@@ -0,0 +1,317 @@+{-# 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.KinesisAnalyticsV2.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 Kinesis Data Analytics application. For information about+-- creating a Kinesis Data Analytics application, see+-- <https://docs.aws.amazon.com/kinesisanalytics/latest/java/getting-started.html Creating an Application>.+module Amazonka.KinesisAnalyticsV2.CreateApplication+  ( -- * Creating a Request+    CreateApplication (..),+    newCreateApplication,++    -- * Request Lenses+    createApplication_applicationConfiguration,+    createApplication_applicationDescription,+    createApplication_applicationMode,+    createApplication_cloudWatchLoggingOptions,+    createApplication_tags,+    createApplication_applicationName,+    createApplication_runtimeEnvironment,+    createApplication_serviceExecutionRole,++    -- * Destructuring the Response+    CreateApplicationResponse (..),+    newCreateApplicationResponse,++    -- * Response Lenses+    createApplicationResponse_httpStatus,+    createApplicationResponse_applicationDetail,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.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'+  { -- | Use this parameter to configure the application.+    applicationConfiguration :: Prelude.Maybe ApplicationConfiguration,+    -- | A summary description of the application.+    applicationDescription :: Prelude.Maybe Prelude.Text,+    -- | Use the @STREAMING@ mode to create a Kinesis Data Analytics For Flink+    -- application. To create a Kinesis Data Analytics Studio notebook, use the+    -- @INTERACTIVE@ mode.+    applicationMode :: Prelude.Maybe ApplicationMode,+    -- | Use this parameter to configure an Amazon CloudWatch log stream to+    -- monitor application configuration errors.+    cloudWatchLoggingOptions :: Prelude.Maybe [CloudWatchLoggingOption],+    -- | A list of one or more tags to assign to the application. A tag is a+    -- key-value pair that identifies an application. Note that the maximum+    -- number of application tags includes system tags. The maximum number of+    -- user-defined application tags is 50. For more information, see+    -- <https://docs.aws.amazon.com/kinesisanalytics/latest/java/how-tagging.html Using Tagging>.+    tags :: Prelude.Maybe (Prelude.NonEmpty Tag),+    -- | The name of your application (for example, @sample-app@).+    applicationName :: Prelude.Text,+    -- | The runtime environment for the application.+    runtimeEnvironment :: RuntimeEnvironment,+    -- | The IAM role used by the application to access Kinesis data streams,+    -- Kinesis Data Firehose delivery streams, Amazon S3 objects, and other+    -- external resources.+    serviceExecutionRole :: 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:+--+-- 'applicationConfiguration', 'createApplication_applicationConfiguration' - Use this parameter to configure the application.+--+-- 'applicationDescription', 'createApplication_applicationDescription' - A summary description of the application.+--+-- 'applicationMode', 'createApplication_applicationMode' - Use the @STREAMING@ mode to create a Kinesis Data Analytics For Flink+-- application. To create a Kinesis Data Analytics Studio notebook, use the+-- @INTERACTIVE@ mode.+--+-- 'cloudWatchLoggingOptions', 'createApplication_cloudWatchLoggingOptions' - Use this parameter to configure an Amazon CloudWatch log stream to+-- monitor application configuration errors.+--+-- 'tags', 'createApplication_tags' - A list of one or more tags to assign to the application. A tag is a+-- key-value pair that identifies an application. Note that the maximum+-- number of application tags includes system tags. The maximum number of+-- user-defined application tags is 50. For more information, see+-- <https://docs.aws.amazon.com/kinesisanalytics/latest/java/how-tagging.html Using Tagging>.+--+-- 'applicationName', 'createApplication_applicationName' - The name of your application (for example, @sample-app@).+--+-- 'runtimeEnvironment', 'createApplication_runtimeEnvironment' - The runtime environment for the application.+--+-- 'serviceExecutionRole', 'createApplication_serviceExecutionRole' - The IAM role used by the application to access Kinesis data streams,+-- Kinesis Data Firehose delivery streams, Amazon S3 objects, and other+-- external resources.+newCreateApplication ::+  -- | 'applicationName'+  Prelude.Text ->+  -- | 'runtimeEnvironment'+  RuntimeEnvironment ->+  -- | 'serviceExecutionRole'+  Prelude.Text ->+  CreateApplication+newCreateApplication+  pApplicationName_+  pRuntimeEnvironment_+  pServiceExecutionRole_ =+    CreateApplication'+      { applicationConfiguration =+          Prelude.Nothing,+        applicationDescription = Prelude.Nothing,+        applicationMode = Prelude.Nothing,+        cloudWatchLoggingOptions = Prelude.Nothing,+        tags = Prelude.Nothing,+        applicationName = pApplicationName_,+        runtimeEnvironment = pRuntimeEnvironment_,+        serviceExecutionRole = pServiceExecutionRole_+      }++-- | Use this parameter to configure the application.+createApplication_applicationConfiguration :: Lens.Lens' CreateApplication (Prelude.Maybe ApplicationConfiguration)+createApplication_applicationConfiguration = Lens.lens (\CreateApplication' {applicationConfiguration} -> applicationConfiguration) (\s@CreateApplication' {} a -> s {applicationConfiguration = a} :: CreateApplication)++-- | A summary description of the application.+createApplication_applicationDescription :: Lens.Lens' CreateApplication (Prelude.Maybe Prelude.Text)+createApplication_applicationDescription = Lens.lens (\CreateApplication' {applicationDescription} -> applicationDescription) (\s@CreateApplication' {} a -> s {applicationDescription = a} :: CreateApplication)++-- | Use the @STREAMING@ mode to create a Kinesis Data Analytics For Flink+-- application. To create a Kinesis Data Analytics Studio notebook, use the+-- @INTERACTIVE@ mode.+createApplication_applicationMode :: Lens.Lens' CreateApplication (Prelude.Maybe ApplicationMode)+createApplication_applicationMode = Lens.lens (\CreateApplication' {applicationMode} -> applicationMode) (\s@CreateApplication' {} a -> s {applicationMode = a} :: CreateApplication)++-- | Use this parameter to configure an Amazon CloudWatch log stream to+-- monitor application configuration errors.+createApplication_cloudWatchLoggingOptions :: Lens.Lens' CreateApplication (Prelude.Maybe [CloudWatchLoggingOption])+createApplication_cloudWatchLoggingOptions = Lens.lens (\CreateApplication' {cloudWatchLoggingOptions} -> cloudWatchLoggingOptions) (\s@CreateApplication' {} a -> s {cloudWatchLoggingOptions = a} :: CreateApplication) Prelude.. Lens.mapping Lens.coerced++-- | A list of one or more tags to assign to the application. A tag is a+-- key-value pair that identifies an application. Note that the maximum+-- number of application tags includes system tags. The maximum number of+-- user-defined application tags is 50. For more information, see+-- <https://docs.aws.amazon.com/kinesisanalytics/latest/java/how-tagging.html Using Tagging>.+createApplication_tags :: Lens.Lens' CreateApplication (Prelude.Maybe (Prelude.NonEmpty Tag))+createApplication_tags = Lens.lens (\CreateApplication' {tags} -> tags) (\s@CreateApplication' {} a -> s {tags = a} :: CreateApplication) Prelude.. Lens.mapping Lens.coerced++-- | The name of your application (for example, @sample-app@).+createApplication_applicationName :: Lens.Lens' CreateApplication Prelude.Text+createApplication_applicationName = Lens.lens (\CreateApplication' {applicationName} -> applicationName) (\s@CreateApplication' {} a -> s {applicationName = a} :: CreateApplication)++-- | The runtime environment for the application.+createApplication_runtimeEnvironment :: Lens.Lens' CreateApplication RuntimeEnvironment+createApplication_runtimeEnvironment = Lens.lens (\CreateApplication' {runtimeEnvironment} -> runtimeEnvironment) (\s@CreateApplication' {} a -> s {runtimeEnvironment = a} :: CreateApplication)++-- | The IAM role used by the application to access Kinesis data streams,+-- Kinesis Data Firehose delivery streams, Amazon S3 objects, and other+-- external resources.+createApplication_serviceExecutionRole :: Lens.Lens' CreateApplication Prelude.Text+createApplication_serviceExecutionRole = Lens.lens (\CreateApplication' {serviceExecutionRole} -> serviceExecutionRole) (\s@CreateApplication' {} a -> s {serviceExecutionRole = 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..:> "ApplicationDetail")+      )++instance Prelude.Hashable CreateApplication where+  hashWithSalt _salt CreateApplication' {..} =+    _salt+      `Prelude.hashWithSalt` applicationConfiguration+      `Prelude.hashWithSalt` applicationDescription+      `Prelude.hashWithSalt` applicationMode+      `Prelude.hashWithSalt` cloudWatchLoggingOptions+      `Prelude.hashWithSalt` tags+      `Prelude.hashWithSalt` applicationName+      `Prelude.hashWithSalt` runtimeEnvironment+      `Prelude.hashWithSalt` serviceExecutionRole++instance Prelude.NFData CreateApplication where+  rnf CreateApplication' {..} =+    Prelude.rnf applicationConfiguration+      `Prelude.seq` Prelude.rnf applicationDescription+      `Prelude.seq` Prelude.rnf applicationMode+      `Prelude.seq` Prelude.rnf cloudWatchLoggingOptions+      `Prelude.seq` Prelude.rnf tags+      `Prelude.seq` Prelude.rnf applicationName+      `Prelude.seq` Prelude.rnf runtimeEnvironment+      `Prelude.seq` Prelude.rnf serviceExecutionRole++instance Data.ToHeaders CreateApplication where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "X-Amz-Target"+              Data.=# ( "KinesisAnalytics_20180523.CreateApplication" ::+                          Prelude.ByteString+                      ),+            "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance Data.ToJSON CreateApplication where+  toJSON CreateApplication' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("ApplicationConfiguration" Data..=)+              Prelude.<$> applicationConfiguration,+            ("ApplicationDescription" Data..=)+              Prelude.<$> applicationDescription,+            ("ApplicationMode" Data..=)+              Prelude.<$> applicationMode,+            ("CloudWatchLoggingOptions" Data..=)+              Prelude.<$> cloudWatchLoggingOptions,+            ("Tags" Data..=) Prelude.<$> tags,+            Prelude.Just+              ("ApplicationName" Data..= applicationName),+            Prelude.Just+              ("RuntimeEnvironment" Data..= runtimeEnvironment),+            Prelude.Just+              ( "ServiceExecutionRole"+                  Data..= serviceExecutionRole+              )+          ]+      )++instance Data.ToPath CreateApplication where+  toPath = Prelude.const "/"++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,+    -- | In response to your @CreateApplication@ request, Kinesis Data Analytics+    -- returns a response with details of the application it created.+    applicationDetail :: ApplicationDetail+  }+  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.+--+-- 'applicationDetail', 'createApplicationResponse_applicationDetail' - In response to your @CreateApplication@ request, Kinesis Data Analytics+-- returns a response with details of the application it created.+newCreateApplicationResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  -- | 'applicationDetail'+  ApplicationDetail ->+  CreateApplicationResponse+newCreateApplicationResponse+  pHttpStatus_+  pApplicationDetail_ =+    CreateApplicationResponse'+      { httpStatus =+          pHttpStatus_,+        applicationDetail = pApplicationDetail_+      }++-- | 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)++-- | In response to your @CreateApplication@ request, Kinesis Data Analytics+-- returns a response with details of the application it created.+createApplicationResponse_applicationDetail :: Lens.Lens' CreateApplicationResponse ApplicationDetail+createApplicationResponse_applicationDetail = Lens.lens (\CreateApplicationResponse' {applicationDetail} -> applicationDetail) (\s@CreateApplicationResponse' {} a -> s {applicationDetail = a} :: CreateApplicationResponse)++instance Prelude.NFData CreateApplicationResponse where+  rnf CreateApplicationResponse' {..} =+    Prelude.rnf httpStatus+      `Prelude.seq` Prelude.rnf applicationDetail
+ gen/Amazonka/KinesisAnalyticsV2/CreateApplicationPresignedUrl.hs view
@@ -0,0 +1,234 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.KinesisAnalyticsV2.CreateApplicationPresignedUrl+-- 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 returns a URL that you can use to connect to an+-- application\'s extension.+--+-- The IAM role or user used to call this API defines the permissions to+-- access the extension. After the presigned URL is created, no additional+-- permission is required to access this URL. IAM authorization policies+-- for this API are also enforced for every HTTP request that attempts to+-- connect to the extension.+--+-- You control the amount of time that the URL will be valid using the+-- @SessionExpirationDurationInSeconds@ parameter. If you do not provide+-- this parameter, the returned URL is valid for twelve hours.+--+-- The URL that you get from a call to CreateApplicationPresignedUrl must+-- be used within 3 minutes to be valid. If you first try to use the URL+-- after the 3-minute limit expires, the service returns an HTTP 403+-- Forbidden error.+module Amazonka.KinesisAnalyticsV2.CreateApplicationPresignedUrl+  ( -- * Creating a Request+    CreateApplicationPresignedUrl (..),+    newCreateApplicationPresignedUrl,++    -- * Request Lenses+    createApplicationPresignedUrl_sessionExpirationDurationInSeconds,+    createApplicationPresignedUrl_applicationName,+    createApplicationPresignedUrl_urlType,++    -- * Destructuring the Response+    CreateApplicationPresignedUrlResponse (..),+    newCreateApplicationPresignedUrlResponse,++    -- * Response Lenses+    createApplicationPresignedUrlResponse_authorizedUrl,+    createApplicationPresignedUrlResponse_httpStatus,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newCreateApplicationPresignedUrl' smart constructor.+data CreateApplicationPresignedUrl = CreateApplicationPresignedUrl'+  { -- | The duration in seconds for which the returned URL will be valid.+    sessionExpirationDurationInSeconds :: Prelude.Maybe Prelude.Natural,+    -- | The name of the application.+    applicationName :: Prelude.Text,+    -- | The type of the extension for which to create and return a URL.+    -- Currently, the only valid extension URL type is @FLINK_DASHBOARD_URL@.+    urlType :: UrlType+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateApplicationPresignedUrl' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'sessionExpirationDurationInSeconds', 'createApplicationPresignedUrl_sessionExpirationDurationInSeconds' - The duration in seconds for which the returned URL will be valid.+--+-- 'applicationName', 'createApplicationPresignedUrl_applicationName' - The name of the application.+--+-- 'urlType', 'createApplicationPresignedUrl_urlType' - The type of the extension for which to create and return a URL.+-- Currently, the only valid extension URL type is @FLINK_DASHBOARD_URL@.+newCreateApplicationPresignedUrl ::+  -- | 'applicationName'+  Prelude.Text ->+  -- | 'urlType'+  UrlType ->+  CreateApplicationPresignedUrl+newCreateApplicationPresignedUrl+  pApplicationName_+  pUrlType_ =+    CreateApplicationPresignedUrl'+      { sessionExpirationDurationInSeconds =+          Prelude.Nothing,+        applicationName = pApplicationName_,+        urlType = pUrlType_+      }++-- | The duration in seconds for which the returned URL will be valid.+createApplicationPresignedUrl_sessionExpirationDurationInSeconds :: Lens.Lens' CreateApplicationPresignedUrl (Prelude.Maybe Prelude.Natural)+createApplicationPresignedUrl_sessionExpirationDurationInSeconds = Lens.lens (\CreateApplicationPresignedUrl' {sessionExpirationDurationInSeconds} -> sessionExpirationDurationInSeconds) (\s@CreateApplicationPresignedUrl' {} a -> s {sessionExpirationDurationInSeconds = a} :: CreateApplicationPresignedUrl)++-- | The name of the application.+createApplicationPresignedUrl_applicationName :: Lens.Lens' CreateApplicationPresignedUrl Prelude.Text+createApplicationPresignedUrl_applicationName = Lens.lens (\CreateApplicationPresignedUrl' {applicationName} -> applicationName) (\s@CreateApplicationPresignedUrl' {} a -> s {applicationName = a} :: CreateApplicationPresignedUrl)++-- | The type of the extension for which to create and return a URL.+-- Currently, the only valid extension URL type is @FLINK_DASHBOARD_URL@.+createApplicationPresignedUrl_urlType :: Lens.Lens' CreateApplicationPresignedUrl UrlType+createApplicationPresignedUrl_urlType = Lens.lens (\CreateApplicationPresignedUrl' {urlType} -> urlType) (\s@CreateApplicationPresignedUrl' {} a -> s {urlType = a} :: CreateApplicationPresignedUrl)++instance+  Core.AWSRequest+    CreateApplicationPresignedUrl+  where+  type+    AWSResponse CreateApplicationPresignedUrl =+      CreateApplicationPresignedUrlResponse+  request overrides =+    Request.postJSON (overrides defaultService)+  response =+    Response.receiveJSON+      ( \s h x ->+          CreateApplicationPresignedUrlResponse'+            Prelude.<$> (x Data..?> "AuthorizedUrl")+            Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+      )++instance+  Prelude.Hashable+    CreateApplicationPresignedUrl+  where+  hashWithSalt _salt CreateApplicationPresignedUrl' {..} =+    _salt+      `Prelude.hashWithSalt` sessionExpirationDurationInSeconds+      `Prelude.hashWithSalt` applicationName+      `Prelude.hashWithSalt` urlType++instance Prelude.NFData CreateApplicationPresignedUrl where+  rnf CreateApplicationPresignedUrl' {..} =+    Prelude.rnf sessionExpirationDurationInSeconds+      `Prelude.seq` Prelude.rnf applicationName+      `Prelude.seq` Prelude.rnf urlType++instance Data.ToHeaders CreateApplicationPresignedUrl where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "X-Amz-Target"+              Data.=# ( "KinesisAnalytics_20180523.CreateApplicationPresignedUrl" ::+                          Prelude.ByteString+                      ),+            "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance Data.ToJSON CreateApplicationPresignedUrl where+  toJSON CreateApplicationPresignedUrl' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("SessionExpirationDurationInSeconds" Data..=)+              Prelude.<$> sessionExpirationDurationInSeconds,+            Prelude.Just+              ("ApplicationName" Data..= applicationName),+            Prelude.Just ("UrlType" Data..= urlType)+          ]+      )++instance Data.ToPath CreateApplicationPresignedUrl where+  toPath = Prelude.const "/"++instance Data.ToQuery CreateApplicationPresignedUrl where+  toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newCreateApplicationPresignedUrlResponse' smart constructor.+data CreateApplicationPresignedUrlResponse = CreateApplicationPresignedUrlResponse'+  { -- | The URL of the extension.+    authorizedUrl :: Prelude.Maybe Prelude.Text,+    -- | The response's http status code.+    httpStatus :: Prelude.Int+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateApplicationPresignedUrlResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'authorizedUrl', 'createApplicationPresignedUrlResponse_authorizedUrl' - The URL of the extension.+--+-- 'httpStatus', 'createApplicationPresignedUrlResponse_httpStatus' - The response's http status code.+newCreateApplicationPresignedUrlResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  CreateApplicationPresignedUrlResponse+newCreateApplicationPresignedUrlResponse pHttpStatus_ =+  CreateApplicationPresignedUrlResponse'+    { authorizedUrl =+        Prelude.Nothing,+      httpStatus = pHttpStatus_+    }++-- | The URL of the extension.+createApplicationPresignedUrlResponse_authorizedUrl :: Lens.Lens' CreateApplicationPresignedUrlResponse (Prelude.Maybe Prelude.Text)+createApplicationPresignedUrlResponse_authorizedUrl = Lens.lens (\CreateApplicationPresignedUrlResponse' {authorizedUrl} -> authorizedUrl) (\s@CreateApplicationPresignedUrlResponse' {} a -> s {authorizedUrl = a} :: CreateApplicationPresignedUrlResponse)++-- | The response's http status code.+createApplicationPresignedUrlResponse_httpStatus :: Lens.Lens' CreateApplicationPresignedUrlResponse Prelude.Int+createApplicationPresignedUrlResponse_httpStatus = Lens.lens (\CreateApplicationPresignedUrlResponse' {httpStatus} -> httpStatus) (\s@CreateApplicationPresignedUrlResponse' {} a -> s {httpStatus = a} :: CreateApplicationPresignedUrlResponse)++instance+  Prelude.NFData+    CreateApplicationPresignedUrlResponse+  where+  rnf CreateApplicationPresignedUrlResponse' {..} =+    Prelude.rnf authorizedUrl+      `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/KinesisAnalyticsV2/CreateApplicationSnapshot.hs view
@@ -0,0 +1,183 @@+{-# 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.KinesisAnalyticsV2.CreateApplicationSnapshot+-- 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 snapshot of the application\'s state data.+module Amazonka.KinesisAnalyticsV2.CreateApplicationSnapshot+  ( -- * Creating a Request+    CreateApplicationSnapshot (..),+    newCreateApplicationSnapshot,++    -- * Request Lenses+    createApplicationSnapshot_applicationName,+    createApplicationSnapshot_snapshotName,++    -- * Destructuring the Response+    CreateApplicationSnapshotResponse (..),+    newCreateApplicationSnapshotResponse,++    -- * Response Lenses+    createApplicationSnapshotResponse_httpStatus,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newCreateApplicationSnapshot' smart constructor.+data CreateApplicationSnapshot = CreateApplicationSnapshot'+  { -- | The name of an existing application+    applicationName :: Prelude.Text,+    -- | An identifier for the application snapshot.+    snapshotName :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateApplicationSnapshot' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applicationName', 'createApplicationSnapshot_applicationName' - The name of an existing application+--+-- 'snapshotName', 'createApplicationSnapshot_snapshotName' - An identifier for the application snapshot.+newCreateApplicationSnapshot ::+  -- | 'applicationName'+  Prelude.Text ->+  -- | 'snapshotName'+  Prelude.Text ->+  CreateApplicationSnapshot+newCreateApplicationSnapshot+  pApplicationName_+  pSnapshotName_ =+    CreateApplicationSnapshot'+      { applicationName =+          pApplicationName_,+        snapshotName = pSnapshotName_+      }++-- | The name of an existing application+createApplicationSnapshot_applicationName :: Lens.Lens' CreateApplicationSnapshot Prelude.Text+createApplicationSnapshot_applicationName = Lens.lens (\CreateApplicationSnapshot' {applicationName} -> applicationName) (\s@CreateApplicationSnapshot' {} a -> s {applicationName = a} :: CreateApplicationSnapshot)++-- | An identifier for the application snapshot.+createApplicationSnapshot_snapshotName :: Lens.Lens' CreateApplicationSnapshot Prelude.Text+createApplicationSnapshot_snapshotName = Lens.lens (\CreateApplicationSnapshot' {snapshotName} -> snapshotName) (\s@CreateApplicationSnapshot' {} a -> s {snapshotName = a} :: CreateApplicationSnapshot)++instance Core.AWSRequest CreateApplicationSnapshot where+  type+    AWSResponse CreateApplicationSnapshot =+      CreateApplicationSnapshotResponse+  request overrides =+    Request.postJSON (overrides defaultService)+  response =+    Response.receiveEmpty+      ( \s h x ->+          CreateApplicationSnapshotResponse'+            Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+      )++instance Prelude.Hashable CreateApplicationSnapshot where+  hashWithSalt _salt CreateApplicationSnapshot' {..} =+    _salt+      `Prelude.hashWithSalt` applicationName+      `Prelude.hashWithSalt` snapshotName++instance Prelude.NFData CreateApplicationSnapshot where+  rnf CreateApplicationSnapshot' {..} =+    Prelude.rnf applicationName+      `Prelude.seq` Prelude.rnf snapshotName++instance Data.ToHeaders CreateApplicationSnapshot where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "X-Amz-Target"+              Data.=# ( "KinesisAnalytics_20180523.CreateApplicationSnapshot" ::+                          Prelude.ByteString+                      ),+            "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance Data.ToJSON CreateApplicationSnapshot where+  toJSON CreateApplicationSnapshot' {..} =+    Data.object+      ( Prelude.catMaybes+          [ Prelude.Just+              ("ApplicationName" Data..= applicationName),+            Prelude.Just ("SnapshotName" Data..= snapshotName)+          ]+      )++instance Data.ToPath CreateApplicationSnapshot where+  toPath = Prelude.const "/"++instance Data.ToQuery CreateApplicationSnapshot where+  toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newCreateApplicationSnapshotResponse' smart constructor.+data CreateApplicationSnapshotResponse = CreateApplicationSnapshotResponse'+  { -- | The response's http status code.+    httpStatus :: Prelude.Int+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateApplicationSnapshotResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'createApplicationSnapshotResponse_httpStatus' - The response's http status code.+newCreateApplicationSnapshotResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  CreateApplicationSnapshotResponse+newCreateApplicationSnapshotResponse pHttpStatus_ =+  CreateApplicationSnapshotResponse'+    { httpStatus =+        pHttpStatus_+    }++-- | The response's http status code.+createApplicationSnapshotResponse_httpStatus :: Lens.Lens' CreateApplicationSnapshotResponse Prelude.Int+createApplicationSnapshotResponse_httpStatus = Lens.lens (\CreateApplicationSnapshotResponse' {httpStatus} -> httpStatus) (\s@CreateApplicationSnapshotResponse' {} a -> s {httpStatus = a} :: CreateApplicationSnapshotResponse)++instance+  Prelude.NFData+    CreateApplicationSnapshotResponse+  where+  rnf CreateApplicationSnapshotResponse' {..} =+    Prelude.rnf httpStatus
+ gen/Amazonka/KinesisAnalyticsV2/DeleteApplication.hs view
@@ -0,0 +1,183 @@+{-# 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.KinesisAnalyticsV2.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 the specified application. Kinesis Data Analytics halts+-- application execution and deletes the application.+module Amazonka.KinesisAnalyticsV2.DeleteApplication+  ( -- * Creating a Request+    DeleteApplication (..),+    newDeleteApplication,++    -- * Request Lenses+    deleteApplication_applicationName,+    deleteApplication_createTimestamp,++    -- * 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.KinesisAnalyticsV2.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 name of the application to delete.+    applicationName :: Prelude.Text,+    -- | Use the @DescribeApplication@ operation to get this value.+    createTimestamp :: Data.POSIX+  }+  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:+--+-- 'applicationName', 'deleteApplication_applicationName' - The name of the application to delete.+--+-- 'createTimestamp', 'deleteApplication_createTimestamp' - Use the @DescribeApplication@ operation to get this value.+newDeleteApplication ::+  -- | 'applicationName'+  Prelude.Text ->+  -- | 'createTimestamp'+  Prelude.UTCTime ->+  DeleteApplication+newDeleteApplication+  pApplicationName_+  pCreateTimestamp_ =+    DeleteApplication'+      { applicationName =+          pApplicationName_,+        createTimestamp =+          Data._Time Lens.# pCreateTimestamp_+      }++-- | The name of the application to delete.+deleteApplication_applicationName :: Lens.Lens' DeleteApplication Prelude.Text+deleteApplication_applicationName = Lens.lens (\DeleteApplication' {applicationName} -> applicationName) (\s@DeleteApplication' {} a -> s {applicationName = a} :: DeleteApplication)++-- | Use the @DescribeApplication@ operation to get this value.+deleteApplication_createTimestamp :: Lens.Lens' DeleteApplication Prelude.UTCTime+deleteApplication_createTimestamp = Lens.lens (\DeleteApplication' {createTimestamp} -> createTimestamp) (\s@DeleteApplication' {} a -> s {createTimestamp = a} :: DeleteApplication) Prelude.. Data._Time++instance Core.AWSRequest DeleteApplication where+  type+    AWSResponse DeleteApplication =+      DeleteApplicationResponse+  request overrides =+    Request.postJSON (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` applicationName+      `Prelude.hashWithSalt` createTimestamp++instance Prelude.NFData DeleteApplication where+  rnf DeleteApplication' {..} =+    Prelude.rnf applicationName+      `Prelude.seq` Prelude.rnf createTimestamp++instance Data.ToHeaders DeleteApplication where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "X-Amz-Target"+              Data.=# ( "KinesisAnalytics_20180523.DeleteApplication" ::+                          Prelude.ByteString+                      ),+            "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance Data.ToJSON DeleteApplication where+  toJSON DeleteApplication' {..} =+    Data.object+      ( Prelude.catMaybes+          [ Prelude.Just+              ("ApplicationName" Data..= applicationName),+            Prelude.Just+              ("CreateTimestamp" Data..= createTimestamp)+          ]+      )++instance Data.ToPath DeleteApplication where+  toPath = Prelude.const "/"++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/KinesisAnalyticsV2/DeleteApplicationCloudWatchLoggingOption.hs view
@@ -0,0 +1,327 @@+{-# 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.KinesisAnalyticsV2.DeleteApplicationCloudWatchLoggingOption+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Deletes an Amazon CloudWatch log stream from an Kinesis Data Analytics+-- application.+module Amazonka.KinesisAnalyticsV2.DeleteApplicationCloudWatchLoggingOption+  ( -- * Creating a Request+    DeleteApplicationCloudWatchLoggingOption (..),+    newDeleteApplicationCloudWatchLoggingOption,++    -- * Request Lenses+    deleteApplicationCloudWatchLoggingOption_conditionalToken,+    deleteApplicationCloudWatchLoggingOption_currentApplicationVersionId,+    deleteApplicationCloudWatchLoggingOption_applicationName,+    deleteApplicationCloudWatchLoggingOption_cloudWatchLoggingOptionId,++    -- * Destructuring the Response+    DeleteApplicationCloudWatchLoggingOptionResponse (..),+    newDeleteApplicationCloudWatchLoggingOptionResponse,++    -- * Response Lenses+    deleteApplicationCloudWatchLoggingOptionResponse_applicationARN,+    deleteApplicationCloudWatchLoggingOptionResponse_applicationVersionId,+    deleteApplicationCloudWatchLoggingOptionResponse_cloudWatchLoggingOptionDescriptions,+    deleteApplicationCloudWatchLoggingOptionResponse_httpStatus,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeleteApplicationCloudWatchLoggingOption' smart constructor.+data DeleteApplicationCloudWatchLoggingOption = DeleteApplicationCloudWatchLoggingOption'+  { -- | A value you use to implement strong concurrency for application updates.+    -- You must provide the @CurrentApplicationVersionId@ or the+    -- @ConditionalToken@. You get the application\'s current+    -- @ConditionalToken@ using DescribeApplication. For better concurrency+    -- support, use the @ConditionalToken@ parameter instead of+    -- @CurrentApplicationVersionId@.+    conditionalToken :: Prelude.Maybe Prelude.Text,+    -- | The version ID of the application. You must provide the+    -- @CurrentApplicationVersionId@ or the @ConditionalToken@. You can+    -- retrieve the application version ID using DescribeApplication. For+    -- better concurrency support, use the @ConditionalToken@ parameter instead+    -- of @CurrentApplicationVersionId@.+    currentApplicationVersionId :: Prelude.Maybe Prelude.Natural,+    -- | The application name.+    applicationName :: Prelude.Text,+    -- | The @CloudWatchLoggingOptionId@ of the Amazon CloudWatch logging option+    -- to delete. You can get the @CloudWatchLoggingOptionId@ by using the+    -- DescribeApplication operation.+    cloudWatchLoggingOptionId :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteApplicationCloudWatchLoggingOption' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'conditionalToken', 'deleteApplicationCloudWatchLoggingOption_conditionalToken' - A value you use to implement strong concurrency for application updates.+-- You must provide the @CurrentApplicationVersionId@ or the+-- @ConditionalToken@. You get the application\'s current+-- @ConditionalToken@ using DescribeApplication. For better concurrency+-- support, use the @ConditionalToken@ parameter instead of+-- @CurrentApplicationVersionId@.+--+-- 'currentApplicationVersionId', 'deleteApplicationCloudWatchLoggingOption_currentApplicationVersionId' - The version ID of the application. You must provide the+-- @CurrentApplicationVersionId@ or the @ConditionalToken@. You can+-- retrieve the application version ID using DescribeApplication. For+-- better concurrency support, use the @ConditionalToken@ parameter instead+-- of @CurrentApplicationVersionId@.+--+-- 'applicationName', 'deleteApplicationCloudWatchLoggingOption_applicationName' - The application name.+--+-- 'cloudWatchLoggingOptionId', 'deleteApplicationCloudWatchLoggingOption_cloudWatchLoggingOptionId' - The @CloudWatchLoggingOptionId@ of the Amazon CloudWatch logging option+-- to delete. You can get the @CloudWatchLoggingOptionId@ by using the+-- DescribeApplication operation.+newDeleteApplicationCloudWatchLoggingOption ::+  -- | 'applicationName'+  Prelude.Text ->+  -- | 'cloudWatchLoggingOptionId'+  Prelude.Text ->+  DeleteApplicationCloudWatchLoggingOption+newDeleteApplicationCloudWatchLoggingOption+  pApplicationName_+  pCloudWatchLoggingOptionId_ =+    DeleteApplicationCloudWatchLoggingOption'+      { conditionalToken =+          Prelude.Nothing,+        currentApplicationVersionId =+          Prelude.Nothing,+        applicationName =+          pApplicationName_,+        cloudWatchLoggingOptionId =+          pCloudWatchLoggingOptionId_+      }++-- | A value you use to implement strong concurrency for application updates.+-- You must provide the @CurrentApplicationVersionId@ or the+-- @ConditionalToken@. You get the application\'s current+-- @ConditionalToken@ using DescribeApplication. For better concurrency+-- support, use the @ConditionalToken@ parameter instead of+-- @CurrentApplicationVersionId@.+deleteApplicationCloudWatchLoggingOption_conditionalToken :: Lens.Lens' DeleteApplicationCloudWatchLoggingOption (Prelude.Maybe Prelude.Text)+deleteApplicationCloudWatchLoggingOption_conditionalToken = Lens.lens (\DeleteApplicationCloudWatchLoggingOption' {conditionalToken} -> conditionalToken) (\s@DeleteApplicationCloudWatchLoggingOption' {} a -> s {conditionalToken = a} :: DeleteApplicationCloudWatchLoggingOption)++-- | The version ID of the application. You must provide the+-- @CurrentApplicationVersionId@ or the @ConditionalToken@. You can+-- retrieve the application version ID using DescribeApplication. For+-- better concurrency support, use the @ConditionalToken@ parameter instead+-- of @CurrentApplicationVersionId@.+deleteApplicationCloudWatchLoggingOption_currentApplicationVersionId :: Lens.Lens' DeleteApplicationCloudWatchLoggingOption (Prelude.Maybe Prelude.Natural)+deleteApplicationCloudWatchLoggingOption_currentApplicationVersionId = Lens.lens (\DeleteApplicationCloudWatchLoggingOption' {currentApplicationVersionId} -> currentApplicationVersionId) (\s@DeleteApplicationCloudWatchLoggingOption' {} a -> s {currentApplicationVersionId = a} :: DeleteApplicationCloudWatchLoggingOption)++-- | The application name.+deleteApplicationCloudWatchLoggingOption_applicationName :: Lens.Lens' DeleteApplicationCloudWatchLoggingOption Prelude.Text+deleteApplicationCloudWatchLoggingOption_applicationName = Lens.lens (\DeleteApplicationCloudWatchLoggingOption' {applicationName} -> applicationName) (\s@DeleteApplicationCloudWatchLoggingOption' {} a -> s {applicationName = a} :: DeleteApplicationCloudWatchLoggingOption)++-- | The @CloudWatchLoggingOptionId@ of the Amazon CloudWatch logging option+-- to delete. You can get the @CloudWatchLoggingOptionId@ by using the+-- DescribeApplication operation.+deleteApplicationCloudWatchLoggingOption_cloudWatchLoggingOptionId :: Lens.Lens' DeleteApplicationCloudWatchLoggingOption Prelude.Text+deleteApplicationCloudWatchLoggingOption_cloudWatchLoggingOptionId = Lens.lens (\DeleteApplicationCloudWatchLoggingOption' {cloudWatchLoggingOptionId} -> cloudWatchLoggingOptionId) (\s@DeleteApplicationCloudWatchLoggingOption' {} a -> s {cloudWatchLoggingOptionId = a} :: DeleteApplicationCloudWatchLoggingOption)++instance+  Core.AWSRequest+    DeleteApplicationCloudWatchLoggingOption+  where+  type+    AWSResponse+      DeleteApplicationCloudWatchLoggingOption =+      DeleteApplicationCloudWatchLoggingOptionResponse+  request overrides =+    Request.postJSON (overrides defaultService)+  response =+    Response.receiveJSON+      ( \s h x ->+          DeleteApplicationCloudWatchLoggingOptionResponse'+            Prelude.<$> (x Data..?> "ApplicationARN")+            Prelude.<*> (x Data..?> "ApplicationVersionId")+            Prelude.<*> ( x+                            Data..?> "CloudWatchLoggingOptionDescriptions"+                            Core..!@ Prelude.mempty+                        )+            Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+      )++instance+  Prelude.Hashable+    DeleteApplicationCloudWatchLoggingOption+  where+  hashWithSalt+    _salt+    DeleteApplicationCloudWatchLoggingOption' {..} =+      _salt+        `Prelude.hashWithSalt` conditionalToken+        `Prelude.hashWithSalt` currentApplicationVersionId+        `Prelude.hashWithSalt` applicationName+        `Prelude.hashWithSalt` cloudWatchLoggingOptionId++instance+  Prelude.NFData+    DeleteApplicationCloudWatchLoggingOption+  where+  rnf DeleteApplicationCloudWatchLoggingOption' {..} =+    Prelude.rnf conditionalToken+      `Prelude.seq` Prelude.rnf currentApplicationVersionId+      `Prelude.seq` Prelude.rnf applicationName+      `Prelude.seq` Prelude.rnf cloudWatchLoggingOptionId++instance+  Data.ToHeaders+    DeleteApplicationCloudWatchLoggingOption+  where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "X-Amz-Target"+              Data.=# ( "KinesisAnalytics_20180523.DeleteApplicationCloudWatchLoggingOption" ::+                          Prelude.ByteString+                      ),+            "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance+  Data.ToJSON+    DeleteApplicationCloudWatchLoggingOption+  where+  toJSON DeleteApplicationCloudWatchLoggingOption' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("ConditionalToken" Data..=)+              Prelude.<$> conditionalToken,+            ("CurrentApplicationVersionId" Data..=)+              Prelude.<$> currentApplicationVersionId,+            Prelude.Just+              ("ApplicationName" Data..= applicationName),+            Prelude.Just+              ( "CloudWatchLoggingOptionId"+                  Data..= cloudWatchLoggingOptionId+              )+          ]+      )++instance+  Data.ToPath+    DeleteApplicationCloudWatchLoggingOption+  where+  toPath = Prelude.const "/"++instance+  Data.ToQuery+    DeleteApplicationCloudWatchLoggingOption+  where+  toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDeleteApplicationCloudWatchLoggingOptionResponse' smart constructor.+data DeleteApplicationCloudWatchLoggingOptionResponse = DeleteApplicationCloudWatchLoggingOptionResponse'+  { -- | The application\'s Amazon Resource Name (ARN).+    applicationARN :: Prelude.Maybe Prelude.Text,+    -- | The version ID of the application. Kinesis Data Analytics updates the+    -- @ApplicationVersionId@ each time you change the CloudWatch logging+    -- options.+    applicationVersionId :: Prelude.Maybe Prelude.Natural,+    -- | The descriptions of the remaining CloudWatch logging options for the+    -- application.+    cloudWatchLoggingOptionDescriptions :: Prelude.Maybe [CloudWatchLoggingOptionDescription],+    -- | The response's http status code.+    httpStatus :: Prelude.Int+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteApplicationCloudWatchLoggingOptionResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applicationARN', 'deleteApplicationCloudWatchLoggingOptionResponse_applicationARN' - The application\'s Amazon Resource Name (ARN).+--+-- 'applicationVersionId', 'deleteApplicationCloudWatchLoggingOptionResponse_applicationVersionId' - The version ID of the application. Kinesis Data Analytics updates the+-- @ApplicationVersionId@ each time you change the CloudWatch logging+-- options.+--+-- 'cloudWatchLoggingOptionDescriptions', 'deleteApplicationCloudWatchLoggingOptionResponse_cloudWatchLoggingOptionDescriptions' - The descriptions of the remaining CloudWatch logging options for the+-- application.+--+-- 'httpStatus', 'deleteApplicationCloudWatchLoggingOptionResponse_httpStatus' - The response's http status code.+newDeleteApplicationCloudWatchLoggingOptionResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  DeleteApplicationCloudWatchLoggingOptionResponse+newDeleteApplicationCloudWatchLoggingOptionResponse+  pHttpStatus_ =+    DeleteApplicationCloudWatchLoggingOptionResponse'+      { applicationARN =+          Prelude.Nothing,+        applicationVersionId =+          Prelude.Nothing,+        cloudWatchLoggingOptionDescriptions =+          Prelude.Nothing,+        httpStatus = pHttpStatus_+      }++-- | The application\'s Amazon Resource Name (ARN).+deleteApplicationCloudWatchLoggingOptionResponse_applicationARN :: Lens.Lens' DeleteApplicationCloudWatchLoggingOptionResponse (Prelude.Maybe Prelude.Text)+deleteApplicationCloudWatchLoggingOptionResponse_applicationARN = Lens.lens (\DeleteApplicationCloudWatchLoggingOptionResponse' {applicationARN} -> applicationARN) (\s@DeleteApplicationCloudWatchLoggingOptionResponse' {} a -> s {applicationARN = a} :: DeleteApplicationCloudWatchLoggingOptionResponse)++-- | The version ID of the application. Kinesis Data Analytics updates the+-- @ApplicationVersionId@ each time you change the CloudWatch logging+-- options.+deleteApplicationCloudWatchLoggingOptionResponse_applicationVersionId :: Lens.Lens' DeleteApplicationCloudWatchLoggingOptionResponse (Prelude.Maybe Prelude.Natural)+deleteApplicationCloudWatchLoggingOptionResponse_applicationVersionId = Lens.lens (\DeleteApplicationCloudWatchLoggingOptionResponse' {applicationVersionId} -> applicationVersionId) (\s@DeleteApplicationCloudWatchLoggingOptionResponse' {} a -> s {applicationVersionId = a} :: DeleteApplicationCloudWatchLoggingOptionResponse)++-- | The descriptions of the remaining CloudWatch logging options for the+-- application.+deleteApplicationCloudWatchLoggingOptionResponse_cloudWatchLoggingOptionDescriptions :: Lens.Lens' DeleteApplicationCloudWatchLoggingOptionResponse (Prelude.Maybe [CloudWatchLoggingOptionDescription])+deleteApplicationCloudWatchLoggingOptionResponse_cloudWatchLoggingOptionDescriptions = Lens.lens (\DeleteApplicationCloudWatchLoggingOptionResponse' {cloudWatchLoggingOptionDescriptions} -> cloudWatchLoggingOptionDescriptions) (\s@DeleteApplicationCloudWatchLoggingOptionResponse' {} a -> s {cloudWatchLoggingOptionDescriptions = a} :: DeleteApplicationCloudWatchLoggingOptionResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+deleteApplicationCloudWatchLoggingOptionResponse_httpStatus :: Lens.Lens' DeleteApplicationCloudWatchLoggingOptionResponse Prelude.Int+deleteApplicationCloudWatchLoggingOptionResponse_httpStatus = Lens.lens (\DeleteApplicationCloudWatchLoggingOptionResponse' {httpStatus} -> httpStatus) (\s@DeleteApplicationCloudWatchLoggingOptionResponse' {} a -> s {httpStatus = a} :: DeleteApplicationCloudWatchLoggingOptionResponse)++instance+  Prelude.NFData+    DeleteApplicationCloudWatchLoggingOptionResponse+  where+  rnf+    DeleteApplicationCloudWatchLoggingOptionResponse' {..} =+      Prelude.rnf applicationARN+        `Prelude.seq` Prelude.rnf applicationVersionId+        `Prelude.seq` Prelude.rnf cloudWatchLoggingOptionDescriptions+        `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/KinesisAnalyticsV2/DeleteApplicationInputProcessingConfiguration.hs view
@@ -0,0 +1,269 @@+{-# 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.KinesisAnalyticsV2.DeleteApplicationInputProcessingConfiguration+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Deletes an InputProcessingConfiguration from an input.+module Amazonka.KinesisAnalyticsV2.DeleteApplicationInputProcessingConfiguration+  ( -- * Creating a Request+    DeleteApplicationInputProcessingConfiguration (..),+    newDeleteApplicationInputProcessingConfiguration,++    -- * Request Lenses+    deleteApplicationInputProcessingConfiguration_applicationName,+    deleteApplicationInputProcessingConfiguration_currentApplicationVersionId,+    deleteApplicationInputProcessingConfiguration_inputId,++    -- * Destructuring the Response+    DeleteApplicationInputProcessingConfigurationResponse (..),+    newDeleteApplicationInputProcessingConfigurationResponse,++    -- * Response Lenses+    deleteApplicationInputProcessingConfigurationResponse_applicationARN,+    deleteApplicationInputProcessingConfigurationResponse_applicationVersionId,+    deleteApplicationInputProcessingConfigurationResponse_httpStatus,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeleteApplicationInputProcessingConfiguration' smart constructor.+data DeleteApplicationInputProcessingConfiguration = DeleteApplicationInputProcessingConfiguration'+  { -- | The name of the application.+    applicationName :: Prelude.Text,+    -- | The application version. You can use the DescribeApplication operation+    -- to get the current application version. If the version specified is not+    -- the current version, the @ConcurrentModificationException@ is returned.+    currentApplicationVersionId :: Prelude.Natural,+    -- | The ID of the input configuration from which to delete the input+    -- processing configuration. You can get a list of the input IDs for an+    -- application by using the DescribeApplication operation.+    inputId :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteApplicationInputProcessingConfiguration' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applicationName', 'deleteApplicationInputProcessingConfiguration_applicationName' - The name of the application.+--+-- 'currentApplicationVersionId', 'deleteApplicationInputProcessingConfiguration_currentApplicationVersionId' - The application version. You can use the DescribeApplication operation+-- to get the current application version. If the version specified is not+-- the current version, the @ConcurrentModificationException@ is returned.+--+-- 'inputId', 'deleteApplicationInputProcessingConfiguration_inputId' - The ID of the input configuration from which to delete the input+-- processing configuration. You can get a list of the input IDs for an+-- application by using the DescribeApplication operation.+newDeleteApplicationInputProcessingConfiguration ::+  -- | 'applicationName'+  Prelude.Text ->+  -- | 'currentApplicationVersionId'+  Prelude.Natural ->+  -- | 'inputId'+  Prelude.Text ->+  DeleteApplicationInputProcessingConfiguration+newDeleteApplicationInputProcessingConfiguration+  pApplicationName_+  pCurrentApplicationVersionId_+  pInputId_ =+    DeleteApplicationInputProcessingConfiguration'+      { applicationName =+          pApplicationName_,+        currentApplicationVersionId =+          pCurrentApplicationVersionId_,+        inputId = pInputId_+      }++-- | The name of the application.+deleteApplicationInputProcessingConfiguration_applicationName :: Lens.Lens' DeleteApplicationInputProcessingConfiguration Prelude.Text+deleteApplicationInputProcessingConfiguration_applicationName = Lens.lens (\DeleteApplicationInputProcessingConfiguration' {applicationName} -> applicationName) (\s@DeleteApplicationInputProcessingConfiguration' {} a -> s {applicationName = a} :: DeleteApplicationInputProcessingConfiguration)++-- | The application version. You can use the DescribeApplication operation+-- to get the current application version. If the version specified is not+-- the current version, the @ConcurrentModificationException@ is returned.+deleteApplicationInputProcessingConfiguration_currentApplicationVersionId :: Lens.Lens' DeleteApplicationInputProcessingConfiguration Prelude.Natural+deleteApplicationInputProcessingConfiguration_currentApplicationVersionId = Lens.lens (\DeleteApplicationInputProcessingConfiguration' {currentApplicationVersionId} -> currentApplicationVersionId) (\s@DeleteApplicationInputProcessingConfiguration' {} a -> s {currentApplicationVersionId = a} :: DeleteApplicationInputProcessingConfiguration)++-- | The ID of the input configuration from which to delete the input+-- processing configuration. You can get a list of the input IDs for an+-- application by using the DescribeApplication operation.+deleteApplicationInputProcessingConfiguration_inputId :: Lens.Lens' DeleteApplicationInputProcessingConfiguration Prelude.Text+deleteApplicationInputProcessingConfiguration_inputId = Lens.lens (\DeleteApplicationInputProcessingConfiguration' {inputId} -> inputId) (\s@DeleteApplicationInputProcessingConfiguration' {} a -> s {inputId = a} :: DeleteApplicationInputProcessingConfiguration)++instance+  Core.AWSRequest+    DeleteApplicationInputProcessingConfiguration+  where+  type+    AWSResponse+      DeleteApplicationInputProcessingConfiguration =+      DeleteApplicationInputProcessingConfigurationResponse+  request overrides =+    Request.postJSON (overrides defaultService)+  response =+    Response.receiveJSON+      ( \s h x ->+          DeleteApplicationInputProcessingConfigurationResponse'+            Prelude.<$> (x Data..?> "ApplicationARN")+            Prelude.<*> (x Data..?> "ApplicationVersionId")+            Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+      )++instance+  Prelude.Hashable+    DeleteApplicationInputProcessingConfiguration+  where+  hashWithSalt+    _salt+    DeleteApplicationInputProcessingConfiguration' {..} =+      _salt+        `Prelude.hashWithSalt` applicationName+        `Prelude.hashWithSalt` currentApplicationVersionId+        `Prelude.hashWithSalt` inputId++instance+  Prelude.NFData+    DeleteApplicationInputProcessingConfiguration+  where+  rnf+    DeleteApplicationInputProcessingConfiguration' {..} =+      Prelude.rnf applicationName+        `Prelude.seq` Prelude.rnf currentApplicationVersionId+        `Prelude.seq` Prelude.rnf inputId++instance+  Data.ToHeaders+    DeleteApplicationInputProcessingConfiguration+  where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "X-Amz-Target"+              Data.=# ( "KinesisAnalytics_20180523.DeleteApplicationInputProcessingConfiguration" ::+                          Prelude.ByteString+                      ),+            "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance+  Data.ToJSON+    DeleteApplicationInputProcessingConfiguration+  where+  toJSON+    DeleteApplicationInputProcessingConfiguration' {..} =+      Data.object+        ( Prelude.catMaybes+            [ Prelude.Just+                ("ApplicationName" Data..= applicationName),+              Prelude.Just+                ( "CurrentApplicationVersionId"+                    Data..= currentApplicationVersionId+                ),+              Prelude.Just ("InputId" Data..= inputId)+            ]+        )++instance+  Data.ToPath+    DeleteApplicationInputProcessingConfiguration+  where+  toPath = Prelude.const "/"++instance+  Data.ToQuery+    DeleteApplicationInputProcessingConfiguration+  where+  toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDeleteApplicationInputProcessingConfigurationResponse' smart constructor.+data DeleteApplicationInputProcessingConfigurationResponse = DeleteApplicationInputProcessingConfigurationResponse'+  { -- | The Amazon Resource Name (ARN) of the application.+    applicationARN :: Prelude.Maybe Prelude.Text,+    -- | The current application version ID.+    applicationVersionId :: Prelude.Maybe Prelude.Natural,+    -- | The response's http status code.+    httpStatus :: Prelude.Int+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteApplicationInputProcessingConfigurationResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applicationARN', 'deleteApplicationInputProcessingConfigurationResponse_applicationARN' - The Amazon Resource Name (ARN) of the application.+--+-- 'applicationVersionId', 'deleteApplicationInputProcessingConfigurationResponse_applicationVersionId' - The current application version ID.+--+-- 'httpStatus', 'deleteApplicationInputProcessingConfigurationResponse_httpStatus' - The response's http status code.+newDeleteApplicationInputProcessingConfigurationResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  DeleteApplicationInputProcessingConfigurationResponse+newDeleteApplicationInputProcessingConfigurationResponse+  pHttpStatus_ =+    DeleteApplicationInputProcessingConfigurationResponse'+      { applicationARN =+          Prelude.Nothing,+        applicationVersionId =+          Prelude.Nothing,+        httpStatus =+          pHttpStatus_+      }++-- | The Amazon Resource Name (ARN) of the application.+deleteApplicationInputProcessingConfigurationResponse_applicationARN :: Lens.Lens' DeleteApplicationInputProcessingConfigurationResponse (Prelude.Maybe Prelude.Text)+deleteApplicationInputProcessingConfigurationResponse_applicationARN = Lens.lens (\DeleteApplicationInputProcessingConfigurationResponse' {applicationARN} -> applicationARN) (\s@DeleteApplicationInputProcessingConfigurationResponse' {} a -> s {applicationARN = a} :: DeleteApplicationInputProcessingConfigurationResponse)++-- | The current application version ID.+deleteApplicationInputProcessingConfigurationResponse_applicationVersionId :: Lens.Lens' DeleteApplicationInputProcessingConfigurationResponse (Prelude.Maybe Prelude.Natural)+deleteApplicationInputProcessingConfigurationResponse_applicationVersionId = Lens.lens (\DeleteApplicationInputProcessingConfigurationResponse' {applicationVersionId} -> applicationVersionId) (\s@DeleteApplicationInputProcessingConfigurationResponse' {} a -> s {applicationVersionId = a} :: DeleteApplicationInputProcessingConfigurationResponse)++-- | The response's http status code.+deleteApplicationInputProcessingConfigurationResponse_httpStatus :: Lens.Lens' DeleteApplicationInputProcessingConfigurationResponse Prelude.Int+deleteApplicationInputProcessingConfigurationResponse_httpStatus = Lens.lens (\DeleteApplicationInputProcessingConfigurationResponse' {httpStatus} -> httpStatus) (\s@DeleteApplicationInputProcessingConfigurationResponse' {} a -> s {httpStatus = a} :: DeleteApplicationInputProcessingConfigurationResponse)++instance+  Prelude.NFData+    DeleteApplicationInputProcessingConfigurationResponse+  where+  rnf+    DeleteApplicationInputProcessingConfigurationResponse' {..} =+      Prelude.rnf applicationARN+        `Prelude.seq` Prelude.rnf applicationVersionId+        `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/KinesisAnalyticsV2/DeleteApplicationOutput.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.KinesisAnalyticsV2.DeleteApplicationOutput+-- 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 the output destination configuration from your SQL-based Kinesis+-- Data Analytics application\'s configuration. Kinesis Data Analytics will+-- no longer write data from the corresponding in-application stream to the+-- external output destination.+module Amazonka.KinesisAnalyticsV2.DeleteApplicationOutput+  ( -- * Creating a Request+    DeleteApplicationOutput (..),+    newDeleteApplicationOutput,++    -- * Request Lenses+    deleteApplicationOutput_applicationName,+    deleteApplicationOutput_currentApplicationVersionId,+    deleteApplicationOutput_outputId,++    -- * Destructuring the Response+    DeleteApplicationOutputResponse (..),+    newDeleteApplicationOutputResponse,++    -- * Response Lenses+    deleteApplicationOutputResponse_applicationARN,+    deleteApplicationOutputResponse_applicationVersionId,+    deleteApplicationOutputResponse_httpStatus,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeleteApplicationOutput' smart constructor.+data DeleteApplicationOutput = DeleteApplicationOutput'+  { -- | The application name.+    applicationName :: Prelude.Text,+    -- | The application version. You can use the DescribeApplication operation+    -- to get the current application version. If the version specified is not+    -- the current version, the @ConcurrentModificationException@ is returned.+    currentApplicationVersionId :: Prelude.Natural,+    -- | The ID of the configuration to delete. Each output configuration that is+    -- added to the application (either when the application is created or+    -- later) using the AddApplicationOutput operation has a unique ID. You+    -- need to provide the ID to uniquely identify the output configuration+    -- that you want to delete from the application configuration. You can use+    -- the DescribeApplication operation to get the specific @OutputId@.+    outputId :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteApplicationOutput' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applicationName', 'deleteApplicationOutput_applicationName' - The application name.+--+-- 'currentApplicationVersionId', 'deleteApplicationOutput_currentApplicationVersionId' - The application version. You can use the DescribeApplication operation+-- to get the current application version. If the version specified is not+-- the current version, the @ConcurrentModificationException@ is returned.+--+-- 'outputId', 'deleteApplicationOutput_outputId' - The ID of the configuration to delete. Each output configuration that is+-- added to the application (either when the application is created or+-- later) using the AddApplicationOutput operation has a unique ID. You+-- need to provide the ID to uniquely identify the output configuration+-- that you want to delete from the application configuration. You can use+-- the DescribeApplication operation to get the specific @OutputId@.+newDeleteApplicationOutput ::+  -- | 'applicationName'+  Prelude.Text ->+  -- | 'currentApplicationVersionId'+  Prelude.Natural ->+  -- | 'outputId'+  Prelude.Text ->+  DeleteApplicationOutput+newDeleteApplicationOutput+  pApplicationName_+  pCurrentApplicationVersionId_+  pOutputId_ =+    DeleteApplicationOutput'+      { applicationName =+          pApplicationName_,+        currentApplicationVersionId =+          pCurrentApplicationVersionId_,+        outputId = pOutputId_+      }++-- | The application name.+deleteApplicationOutput_applicationName :: Lens.Lens' DeleteApplicationOutput Prelude.Text+deleteApplicationOutput_applicationName = Lens.lens (\DeleteApplicationOutput' {applicationName} -> applicationName) (\s@DeleteApplicationOutput' {} a -> s {applicationName = a} :: DeleteApplicationOutput)++-- | The application version. You can use the DescribeApplication operation+-- to get the current application version. If the version specified is not+-- the current version, the @ConcurrentModificationException@ is returned.+deleteApplicationOutput_currentApplicationVersionId :: Lens.Lens' DeleteApplicationOutput Prelude.Natural+deleteApplicationOutput_currentApplicationVersionId = Lens.lens (\DeleteApplicationOutput' {currentApplicationVersionId} -> currentApplicationVersionId) (\s@DeleteApplicationOutput' {} a -> s {currentApplicationVersionId = a} :: DeleteApplicationOutput)++-- | The ID of the configuration to delete. Each output configuration that is+-- added to the application (either when the application is created or+-- later) using the AddApplicationOutput operation has a unique ID. You+-- need to provide the ID to uniquely identify the output configuration+-- that you want to delete from the application configuration. You can use+-- the DescribeApplication operation to get the specific @OutputId@.+deleteApplicationOutput_outputId :: Lens.Lens' DeleteApplicationOutput Prelude.Text+deleteApplicationOutput_outputId = Lens.lens (\DeleteApplicationOutput' {outputId} -> outputId) (\s@DeleteApplicationOutput' {} a -> s {outputId = a} :: DeleteApplicationOutput)++instance Core.AWSRequest DeleteApplicationOutput where+  type+    AWSResponse DeleteApplicationOutput =+      DeleteApplicationOutputResponse+  request overrides =+    Request.postJSON (overrides defaultService)+  response =+    Response.receiveJSON+      ( \s h x ->+          DeleteApplicationOutputResponse'+            Prelude.<$> (x Data..?> "ApplicationARN")+            Prelude.<*> (x Data..?> "ApplicationVersionId")+            Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+      )++instance Prelude.Hashable DeleteApplicationOutput where+  hashWithSalt _salt DeleteApplicationOutput' {..} =+    _salt+      `Prelude.hashWithSalt` applicationName+      `Prelude.hashWithSalt` currentApplicationVersionId+      `Prelude.hashWithSalt` outputId++instance Prelude.NFData DeleteApplicationOutput where+  rnf DeleteApplicationOutput' {..} =+    Prelude.rnf applicationName+      `Prelude.seq` Prelude.rnf currentApplicationVersionId+      `Prelude.seq` Prelude.rnf outputId++instance Data.ToHeaders DeleteApplicationOutput where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "X-Amz-Target"+              Data.=# ( "KinesisAnalytics_20180523.DeleteApplicationOutput" ::+                          Prelude.ByteString+                      ),+            "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance Data.ToJSON DeleteApplicationOutput where+  toJSON DeleteApplicationOutput' {..} =+    Data.object+      ( Prelude.catMaybes+          [ Prelude.Just+              ("ApplicationName" Data..= applicationName),+            Prelude.Just+              ( "CurrentApplicationVersionId"+                  Data..= currentApplicationVersionId+              ),+            Prelude.Just ("OutputId" Data..= outputId)+          ]+      )++instance Data.ToPath DeleteApplicationOutput where+  toPath = Prelude.const "/"++instance Data.ToQuery DeleteApplicationOutput where+  toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDeleteApplicationOutputResponse' smart constructor.+data DeleteApplicationOutputResponse = DeleteApplicationOutputResponse'+  { -- | The application Amazon Resource Name (ARN).+    applicationARN :: Prelude.Maybe Prelude.Text,+    -- | The current application version ID.+    applicationVersionId :: Prelude.Maybe Prelude.Natural,+    -- | The response's http status code.+    httpStatus :: Prelude.Int+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteApplicationOutputResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applicationARN', 'deleteApplicationOutputResponse_applicationARN' - The application Amazon Resource Name (ARN).+--+-- 'applicationVersionId', 'deleteApplicationOutputResponse_applicationVersionId' - The current application version ID.+--+-- 'httpStatus', 'deleteApplicationOutputResponse_httpStatus' - The response's http status code.+newDeleteApplicationOutputResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  DeleteApplicationOutputResponse+newDeleteApplicationOutputResponse pHttpStatus_ =+  DeleteApplicationOutputResponse'+    { applicationARN =+        Prelude.Nothing,+      applicationVersionId = Prelude.Nothing,+      httpStatus = pHttpStatus_+    }++-- | The application Amazon Resource Name (ARN).+deleteApplicationOutputResponse_applicationARN :: Lens.Lens' DeleteApplicationOutputResponse (Prelude.Maybe Prelude.Text)+deleteApplicationOutputResponse_applicationARN = Lens.lens (\DeleteApplicationOutputResponse' {applicationARN} -> applicationARN) (\s@DeleteApplicationOutputResponse' {} a -> s {applicationARN = a} :: DeleteApplicationOutputResponse)++-- | The current application version ID.+deleteApplicationOutputResponse_applicationVersionId :: Lens.Lens' DeleteApplicationOutputResponse (Prelude.Maybe Prelude.Natural)+deleteApplicationOutputResponse_applicationVersionId = Lens.lens (\DeleteApplicationOutputResponse' {applicationVersionId} -> applicationVersionId) (\s@DeleteApplicationOutputResponse' {} a -> s {applicationVersionId = a} :: DeleteApplicationOutputResponse)++-- | The response's http status code.+deleteApplicationOutputResponse_httpStatus :: Lens.Lens' DeleteApplicationOutputResponse Prelude.Int+deleteApplicationOutputResponse_httpStatus = Lens.lens (\DeleteApplicationOutputResponse' {httpStatus} -> httpStatus) (\s@DeleteApplicationOutputResponse' {} a -> s {httpStatus = a} :: DeleteApplicationOutputResponse)++instance+  Prelude.NFData+    DeleteApplicationOutputResponse+  where+  rnf DeleteApplicationOutputResponse' {..} =+    Prelude.rnf applicationARN+      `Prelude.seq` Prelude.rnf applicationVersionId+      `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/KinesisAnalyticsV2/DeleteApplicationReferenceDataSource.hs view
@@ -0,0 +1,275 @@+{-# 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.KinesisAnalyticsV2.DeleteApplicationReferenceDataSource+-- 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 reference data source configuration from the specified+-- SQL-based Kinesis Data Analytics application\'s configuration.+--+-- If the application is running, Kinesis Data Analytics immediately+-- removes the in-application table that you created using the+-- AddApplicationReferenceDataSource operation.+module Amazonka.KinesisAnalyticsV2.DeleteApplicationReferenceDataSource+  ( -- * Creating a Request+    DeleteApplicationReferenceDataSource (..),+    newDeleteApplicationReferenceDataSource,++    -- * Request Lenses+    deleteApplicationReferenceDataSource_applicationName,+    deleteApplicationReferenceDataSource_currentApplicationVersionId,+    deleteApplicationReferenceDataSource_referenceId,++    -- * Destructuring the Response+    DeleteApplicationReferenceDataSourceResponse (..),+    newDeleteApplicationReferenceDataSourceResponse,++    -- * Response Lenses+    deleteApplicationReferenceDataSourceResponse_applicationARN,+    deleteApplicationReferenceDataSourceResponse_applicationVersionId,+    deleteApplicationReferenceDataSourceResponse_httpStatus,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeleteApplicationReferenceDataSource' smart constructor.+data DeleteApplicationReferenceDataSource = DeleteApplicationReferenceDataSource'+  { -- | The name of an existing application.+    applicationName :: Prelude.Text,+    -- | The current application version. You can use the DescribeApplication+    -- operation to get the current application version. If the version+    -- specified is not the current version, the+    -- @ConcurrentModificationException@ is returned.+    currentApplicationVersionId :: Prelude.Natural,+    -- | The ID of the reference data source. When you add a reference data+    -- source to your application using the AddApplicationReferenceDataSource,+    -- Kinesis Data Analytics assigns an ID. You can use the+    -- DescribeApplication operation to get the reference ID.+    referenceId :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteApplicationReferenceDataSource' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applicationName', 'deleteApplicationReferenceDataSource_applicationName' - The name of an existing application.+--+-- 'currentApplicationVersionId', 'deleteApplicationReferenceDataSource_currentApplicationVersionId' - The current application version. You can use the DescribeApplication+-- operation to get the current application version. If the version+-- specified is not the current version, the+-- @ConcurrentModificationException@ is returned.+--+-- 'referenceId', 'deleteApplicationReferenceDataSource_referenceId' - The ID of the reference data source. When you add a reference data+-- source to your application using the AddApplicationReferenceDataSource,+-- Kinesis Data Analytics assigns an ID. You can use the+-- DescribeApplication operation to get the reference ID.+newDeleteApplicationReferenceDataSource ::+  -- | 'applicationName'+  Prelude.Text ->+  -- | 'currentApplicationVersionId'+  Prelude.Natural ->+  -- | 'referenceId'+  Prelude.Text ->+  DeleteApplicationReferenceDataSource+newDeleteApplicationReferenceDataSource+  pApplicationName_+  pCurrentApplicationVersionId_+  pReferenceId_ =+    DeleteApplicationReferenceDataSource'+      { applicationName =+          pApplicationName_,+        currentApplicationVersionId =+          pCurrentApplicationVersionId_,+        referenceId = pReferenceId_+      }++-- | The name of an existing application.+deleteApplicationReferenceDataSource_applicationName :: Lens.Lens' DeleteApplicationReferenceDataSource Prelude.Text+deleteApplicationReferenceDataSource_applicationName = Lens.lens (\DeleteApplicationReferenceDataSource' {applicationName} -> applicationName) (\s@DeleteApplicationReferenceDataSource' {} a -> s {applicationName = a} :: DeleteApplicationReferenceDataSource)++-- | The current application version. You can use the DescribeApplication+-- operation to get the current application version. If the version+-- specified is not the current version, the+-- @ConcurrentModificationException@ is returned.+deleteApplicationReferenceDataSource_currentApplicationVersionId :: Lens.Lens' DeleteApplicationReferenceDataSource Prelude.Natural+deleteApplicationReferenceDataSource_currentApplicationVersionId = Lens.lens (\DeleteApplicationReferenceDataSource' {currentApplicationVersionId} -> currentApplicationVersionId) (\s@DeleteApplicationReferenceDataSource' {} a -> s {currentApplicationVersionId = a} :: DeleteApplicationReferenceDataSource)++-- | The ID of the reference data source. When you add a reference data+-- source to your application using the AddApplicationReferenceDataSource,+-- Kinesis Data Analytics assigns an ID. You can use the+-- DescribeApplication operation to get the reference ID.+deleteApplicationReferenceDataSource_referenceId :: Lens.Lens' DeleteApplicationReferenceDataSource Prelude.Text+deleteApplicationReferenceDataSource_referenceId = Lens.lens (\DeleteApplicationReferenceDataSource' {referenceId} -> referenceId) (\s@DeleteApplicationReferenceDataSource' {} a -> s {referenceId = a} :: DeleteApplicationReferenceDataSource)++instance+  Core.AWSRequest+    DeleteApplicationReferenceDataSource+  where+  type+    AWSResponse DeleteApplicationReferenceDataSource =+      DeleteApplicationReferenceDataSourceResponse+  request overrides =+    Request.postJSON (overrides defaultService)+  response =+    Response.receiveJSON+      ( \s h x ->+          DeleteApplicationReferenceDataSourceResponse'+            Prelude.<$> (x Data..?> "ApplicationARN")+            Prelude.<*> (x Data..?> "ApplicationVersionId")+            Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+      )++instance+  Prelude.Hashable+    DeleteApplicationReferenceDataSource+  where+  hashWithSalt+    _salt+    DeleteApplicationReferenceDataSource' {..} =+      _salt+        `Prelude.hashWithSalt` applicationName+        `Prelude.hashWithSalt` currentApplicationVersionId+        `Prelude.hashWithSalt` referenceId++instance+  Prelude.NFData+    DeleteApplicationReferenceDataSource+  where+  rnf DeleteApplicationReferenceDataSource' {..} =+    Prelude.rnf applicationName+      `Prelude.seq` Prelude.rnf currentApplicationVersionId+      `Prelude.seq` Prelude.rnf referenceId++instance+  Data.ToHeaders+    DeleteApplicationReferenceDataSource+  where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "X-Amz-Target"+              Data.=# ( "KinesisAnalytics_20180523.DeleteApplicationReferenceDataSource" ::+                          Prelude.ByteString+                      ),+            "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance+  Data.ToJSON+    DeleteApplicationReferenceDataSource+  where+  toJSON DeleteApplicationReferenceDataSource' {..} =+    Data.object+      ( Prelude.catMaybes+          [ Prelude.Just+              ("ApplicationName" Data..= applicationName),+            Prelude.Just+              ( "CurrentApplicationVersionId"+                  Data..= currentApplicationVersionId+              ),+            Prelude.Just ("ReferenceId" Data..= referenceId)+          ]+      )++instance+  Data.ToPath+    DeleteApplicationReferenceDataSource+  where+  toPath = Prelude.const "/"++instance+  Data.ToQuery+    DeleteApplicationReferenceDataSource+  where+  toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDeleteApplicationReferenceDataSourceResponse' smart constructor.+data DeleteApplicationReferenceDataSourceResponse = DeleteApplicationReferenceDataSourceResponse'+  { -- | The application Amazon Resource Name (ARN).+    applicationARN :: Prelude.Maybe Prelude.Text,+    -- | The updated version ID of the application.+    applicationVersionId :: Prelude.Maybe Prelude.Natural,+    -- | The response's http status code.+    httpStatus :: Prelude.Int+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteApplicationReferenceDataSourceResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applicationARN', 'deleteApplicationReferenceDataSourceResponse_applicationARN' - The application Amazon Resource Name (ARN).+--+-- 'applicationVersionId', 'deleteApplicationReferenceDataSourceResponse_applicationVersionId' - The updated version ID of the application.+--+-- 'httpStatus', 'deleteApplicationReferenceDataSourceResponse_httpStatus' - The response's http status code.+newDeleteApplicationReferenceDataSourceResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  DeleteApplicationReferenceDataSourceResponse+newDeleteApplicationReferenceDataSourceResponse+  pHttpStatus_ =+    DeleteApplicationReferenceDataSourceResponse'+      { applicationARN =+          Prelude.Nothing,+        applicationVersionId =+          Prelude.Nothing,+        httpStatus = pHttpStatus_+      }++-- | The application Amazon Resource Name (ARN).+deleteApplicationReferenceDataSourceResponse_applicationARN :: Lens.Lens' DeleteApplicationReferenceDataSourceResponse (Prelude.Maybe Prelude.Text)+deleteApplicationReferenceDataSourceResponse_applicationARN = Lens.lens (\DeleteApplicationReferenceDataSourceResponse' {applicationARN} -> applicationARN) (\s@DeleteApplicationReferenceDataSourceResponse' {} a -> s {applicationARN = a} :: DeleteApplicationReferenceDataSourceResponse)++-- | The updated version ID of the application.+deleteApplicationReferenceDataSourceResponse_applicationVersionId :: Lens.Lens' DeleteApplicationReferenceDataSourceResponse (Prelude.Maybe Prelude.Natural)+deleteApplicationReferenceDataSourceResponse_applicationVersionId = Lens.lens (\DeleteApplicationReferenceDataSourceResponse' {applicationVersionId} -> applicationVersionId) (\s@DeleteApplicationReferenceDataSourceResponse' {} a -> s {applicationVersionId = a} :: DeleteApplicationReferenceDataSourceResponse)++-- | The response's http status code.+deleteApplicationReferenceDataSourceResponse_httpStatus :: Lens.Lens' DeleteApplicationReferenceDataSourceResponse Prelude.Int+deleteApplicationReferenceDataSourceResponse_httpStatus = Lens.lens (\DeleteApplicationReferenceDataSourceResponse' {httpStatus} -> httpStatus) (\s@DeleteApplicationReferenceDataSourceResponse' {} a -> s {httpStatus = a} :: DeleteApplicationReferenceDataSourceResponse)++instance+  Prelude.NFData+    DeleteApplicationReferenceDataSourceResponse+  where+  rnf DeleteApplicationReferenceDataSourceResponse' {..} =+    Prelude.rnf applicationARN+      `Prelude.seq` Prelude.rnf applicationVersionId+      `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/KinesisAnalyticsV2/DeleteApplicationSnapshot.hs view
@@ -0,0 +1,206 @@+{-# 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.KinesisAnalyticsV2.DeleteApplicationSnapshot+-- 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 snapshot of application state.+module Amazonka.KinesisAnalyticsV2.DeleteApplicationSnapshot+  ( -- * Creating a Request+    DeleteApplicationSnapshot (..),+    newDeleteApplicationSnapshot,++    -- * Request Lenses+    deleteApplicationSnapshot_applicationName,+    deleteApplicationSnapshot_snapshotName,+    deleteApplicationSnapshot_snapshotCreationTimestamp,++    -- * Destructuring the Response+    DeleteApplicationSnapshotResponse (..),+    newDeleteApplicationSnapshotResponse,++    -- * Response Lenses+    deleteApplicationSnapshotResponse_httpStatus,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeleteApplicationSnapshot' smart constructor.+data DeleteApplicationSnapshot = DeleteApplicationSnapshot'+  { -- | The name of an existing application.+    applicationName :: Prelude.Text,+    -- | The identifier for the snapshot delete.+    snapshotName :: Prelude.Text,+    -- | The creation timestamp of the application snapshot to delete. You can+    -- retrieve this value using or .+    snapshotCreationTimestamp :: Data.POSIX+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteApplicationSnapshot' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applicationName', 'deleteApplicationSnapshot_applicationName' - The name of an existing application.+--+-- 'snapshotName', 'deleteApplicationSnapshot_snapshotName' - The identifier for the snapshot delete.+--+-- 'snapshotCreationTimestamp', 'deleteApplicationSnapshot_snapshotCreationTimestamp' - The creation timestamp of the application snapshot to delete. You can+-- retrieve this value using or .+newDeleteApplicationSnapshot ::+  -- | 'applicationName'+  Prelude.Text ->+  -- | 'snapshotName'+  Prelude.Text ->+  -- | 'snapshotCreationTimestamp'+  Prelude.UTCTime ->+  DeleteApplicationSnapshot+newDeleteApplicationSnapshot+  pApplicationName_+  pSnapshotName_+  pSnapshotCreationTimestamp_ =+    DeleteApplicationSnapshot'+      { applicationName =+          pApplicationName_,+        snapshotName = pSnapshotName_,+        snapshotCreationTimestamp =+          Data._Time Lens.# pSnapshotCreationTimestamp_+      }++-- | The name of an existing application.+deleteApplicationSnapshot_applicationName :: Lens.Lens' DeleteApplicationSnapshot Prelude.Text+deleteApplicationSnapshot_applicationName = Lens.lens (\DeleteApplicationSnapshot' {applicationName} -> applicationName) (\s@DeleteApplicationSnapshot' {} a -> s {applicationName = a} :: DeleteApplicationSnapshot)++-- | The identifier for the snapshot delete.+deleteApplicationSnapshot_snapshotName :: Lens.Lens' DeleteApplicationSnapshot Prelude.Text+deleteApplicationSnapshot_snapshotName = Lens.lens (\DeleteApplicationSnapshot' {snapshotName} -> snapshotName) (\s@DeleteApplicationSnapshot' {} a -> s {snapshotName = a} :: DeleteApplicationSnapshot)++-- | The creation timestamp of the application snapshot to delete. You can+-- retrieve this value using or .+deleteApplicationSnapshot_snapshotCreationTimestamp :: Lens.Lens' DeleteApplicationSnapshot Prelude.UTCTime+deleteApplicationSnapshot_snapshotCreationTimestamp = Lens.lens (\DeleteApplicationSnapshot' {snapshotCreationTimestamp} -> snapshotCreationTimestamp) (\s@DeleteApplicationSnapshot' {} a -> s {snapshotCreationTimestamp = a} :: DeleteApplicationSnapshot) Prelude.. Data._Time++instance Core.AWSRequest DeleteApplicationSnapshot where+  type+    AWSResponse DeleteApplicationSnapshot =+      DeleteApplicationSnapshotResponse+  request overrides =+    Request.postJSON (overrides defaultService)+  response =+    Response.receiveEmpty+      ( \s h x ->+          DeleteApplicationSnapshotResponse'+            Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+      )++instance Prelude.Hashable DeleteApplicationSnapshot where+  hashWithSalt _salt DeleteApplicationSnapshot' {..} =+    _salt+      `Prelude.hashWithSalt` applicationName+      `Prelude.hashWithSalt` snapshotName+      `Prelude.hashWithSalt` snapshotCreationTimestamp++instance Prelude.NFData DeleteApplicationSnapshot where+  rnf DeleteApplicationSnapshot' {..} =+    Prelude.rnf applicationName+      `Prelude.seq` Prelude.rnf snapshotName+      `Prelude.seq` Prelude.rnf snapshotCreationTimestamp++instance Data.ToHeaders DeleteApplicationSnapshot where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "X-Amz-Target"+              Data.=# ( "KinesisAnalytics_20180523.DeleteApplicationSnapshot" ::+                          Prelude.ByteString+                      ),+            "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance Data.ToJSON DeleteApplicationSnapshot where+  toJSON DeleteApplicationSnapshot' {..} =+    Data.object+      ( Prelude.catMaybes+          [ Prelude.Just+              ("ApplicationName" Data..= applicationName),+            Prelude.Just ("SnapshotName" Data..= snapshotName),+            Prelude.Just+              ( "SnapshotCreationTimestamp"+                  Data..= snapshotCreationTimestamp+              )+          ]+      )++instance Data.ToPath DeleteApplicationSnapshot where+  toPath = Prelude.const "/"++instance Data.ToQuery DeleteApplicationSnapshot where+  toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDeleteApplicationSnapshotResponse' smart constructor.+data DeleteApplicationSnapshotResponse = DeleteApplicationSnapshotResponse'+  { -- | The response's http status code.+    httpStatus :: Prelude.Int+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteApplicationSnapshotResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'deleteApplicationSnapshotResponse_httpStatus' - The response's http status code.+newDeleteApplicationSnapshotResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  DeleteApplicationSnapshotResponse+newDeleteApplicationSnapshotResponse pHttpStatus_ =+  DeleteApplicationSnapshotResponse'+    { httpStatus =+        pHttpStatus_+    }++-- | The response's http status code.+deleteApplicationSnapshotResponse_httpStatus :: Lens.Lens' DeleteApplicationSnapshotResponse Prelude.Int+deleteApplicationSnapshotResponse_httpStatus = Lens.lens (\DeleteApplicationSnapshotResponse' {httpStatus} -> httpStatus) (\s@DeleteApplicationSnapshotResponse' {} a -> s {httpStatus = a} :: DeleteApplicationSnapshotResponse)++instance+  Prelude.NFData+    DeleteApplicationSnapshotResponse+  where+  rnf DeleteApplicationSnapshotResponse' {..} =+    Prelude.rnf httpStatus
+ gen/Amazonka/KinesisAnalyticsV2/DeleteApplicationVpcConfiguration.hs view
@@ -0,0 +1,290 @@+{-# 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.KinesisAnalyticsV2.DeleteApplicationVpcConfiguration+-- 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 a VPC configuration from a Kinesis Data Analytics application.+module Amazonka.KinesisAnalyticsV2.DeleteApplicationVpcConfiguration+  ( -- * Creating a Request+    DeleteApplicationVpcConfiguration (..),+    newDeleteApplicationVpcConfiguration,++    -- * Request Lenses+    deleteApplicationVpcConfiguration_conditionalToken,+    deleteApplicationVpcConfiguration_currentApplicationVersionId,+    deleteApplicationVpcConfiguration_applicationName,+    deleteApplicationVpcConfiguration_vpcConfigurationId,++    -- * Destructuring the Response+    DeleteApplicationVpcConfigurationResponse (..),+    newDeleteApplicationVpcConfigurationResponse,++    -- * Response Lenses+    deleteApplicationVpcConfigurationResponse_applicationARN,+    deleteApplicationVpcConfigurationResponse_applicationVersionId,+    deleteApplicationVpcConfigurationResponse_httpStatus,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeleteApplicationVpcConfiguration' smart constructor.+data DeleteApplicationVpcConfiguration = DeleteApplicationVpcConfiguration'+  { -- | A value you use to implement strong concurrency for application updates.+    -- You must provide the @CurrentApplicationVersionId@ or the+    -- @ConditionalToken@. You get the application\'s current+    -- @ConditionalToken@ using DescribeApplication. For better concurrency+    -- support, use the @ConditionalToken@ parameter instead of+    -- @CurrentApplicationVersionId@.+    conditionalToken :: Prelude.Maybe Prelude.Text,+    -- | The current application version ID. You must provide the+    -- @CurrentApplicationVersionId@ or the @ConditionalToken@. You can+    -- retrieve the application version ID using DescribeApplication. For+    -- better concurrency support, use the @ConditionalToken@ parameter instead+    -- of @CurrentApplicationVersionId@.+    currentApplicationVersionId :: Prelude.Maybe Prelude.Natural,+    -- | The name of an existing application.+    applicationName :: Prelude.Text,+    -- | The ID of the VPC configuration to delete.+    vpcConfigurationId :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteApplicationVpcConfiguration' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'conditionalToken', 'deleteApplicationVpcConfiguration_conditionalToken' - A value you use to implement strong concurrency for application updates.+-- You must provide the @CurrentApplicationVersionId@ or the+-- @ConditionalToken@. You get the application\'s current+-- @ConditionalToken@ using DescribeApplication. For better concurrency+-- support, use the @ConditionalToken@ parameter instead of+-- @CurrentApplicationVersionId@.+--+-- 'currentApplicationVersionId', 'deleteApplicationVpcConfiguration_currentApplicationVersionId' - The current application version ID. You must provide the+-- @CurrentApplicationVersionId@ or the @ConditionalToken@. You can+-- retrieve the application version ID using DescribeApplication. For+-- better concurrency support, use the @ConditionalToken@ parameter instead+-- of @CurrentApplicationVersionId@.+--+-- 'applicationName', 'deleteApplicationVpcConfiguration_applicationName' - The name of an existing application.+--+-- 'vpcConfigurationId', 'deleteApplicationVpcConfiguration_vpcConfigurationId' - The ID of the VPC configuration to delete.+newDeleteApplicationVpcConfiguration ::+  -- | 'applicationName'+  Prelude.Text ->+  -- | 'vpcConfigurationId'+  Prelude.Text ->+  DeleteApplicationVpcConfiguration+newDeleteApplicationVpcConfiguration+  pApplicationName_+  pVpcConfigurationId_ =+    DeleteApplicationVpcConfiguration'+      { conditionalToken =+          Prelude.Nothing,+        currentApplicationVersionId =+          Prelude.Nothing,+        applicationName = pApplicationName_,+        vpcConfigurationId =+          pVpcConfigurationId_+      }++-- | A value you use to implement strong concurrency for application updates.+-- You must provide the @CurrentApplicationVersionId@ or the+-- @ConditionalToken@. You get the application\'s current+-- @ConditionalToken@ using DescribeApplication. For better concurrency+-- support, use the @ConditionalToken@ parameter instead of+-- @CurrentApplicationVersionId@.+deleteApplicationVpcConfiguration_conditionalToken :: Lens.Lens' DeleteApplicationVpcConfiguration (Prelude.Maybe Prelude.Text)+deleteApplicationVpcConfiguration_conditionalToken = Lens.lens (\DeleteApplicationVpcConfiguration' {conditionalToken} -> conditionalToken) (\s@DeleteApplicationVpcConfiguration' {} a -> s {conditionalToken = a} :: DeleteApplicationVpcConfiguration)++-- | The current application version ID. You must provide the+-- @CurrentApplicationVersionId@ or the @ConditionalToken@. You can+-- retrieve the application version ID using DescribeApplication. For+-- better concurrency support, use the @ConditionalToken@ parameter instead+-- of @CurrentApplicationVersionId@.+deleteApplicationVpcConfiguration_currentApplicationVersionId :: Lens.Lens' DeleteApplicationVpcConfiguration (Prelude.Maybe Prelude.Natural)+deleteApplicationVpcConfiguration_currentApplicationVersionId = Lens.lens (\DeleteApplicationVpcConfiguration' {currentApplicationVersionId} -> currentApplicationVersionId) (\s@DeleteApplicationVpcConfiguration' {} a -> s {currentApplicationVersionId = a} :: DeleteApplicationVpcConfiguration)++-- | The name of an existing application.+deleteApplicationVpcConfiguration_applicationName :: Lens.Lens' DeleteApplicationVpcConfiguration Prelude.Text+deleteApplicationVpcConfiguration_applicationName = Lens.lens (\DeleteApplicationVpcConfiguration' {applicationName} -> applicationName) (\s@DeleteApplicationVpcConfiguration' {} a -> s {applicationName = a} :: DeleteApplicationVpcConfiguration)++-- | The ID of the VPC configuration to delete.+deleteApplicationVpcConfiguration_vpcConfigurationId :: Lens.Lens' DeleteApplicationVpcConfiguration Prelude.Text+deleteApplicationVpcConfiguration_vpcConfigurationId = Lens.lens (\DeleteApplicationVpcConfiguration' {vpcConfigurationId} -> vpcConfigurationId) (\s@DeleteApplicationVpcConfiguration' {} a -> s {vpcConfigurationId = a} :: DeleteApplicationVpcConfiguration)++instance+  Core.AWSRequest+    DeleteApplicationVpcConfiguration+  where+  type+    AWSResponse DeleteApplicationVpcConfiguration =+      DeleteApplicationVpcConfigurationResponse+  request overrides =+    Request.postJSON (overrides defaultService)+  response =+    Response.receiveJSON+      ( \s h x ->+          DeleteApplicationVpcConfigurationResponse'+            Prelude.<$> (x Data..?> "ApplicationARN")+            Prelude.<*> (x Data..?> "ApplicationVersionId")+            Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+      )++instance+  Prelude.Hashable+    DeleteApplicationVpcConfiguration+  where+  hashWithSalt+    _salt+    DeleteApplicationVpcConfiguration' {..} =+      _salt+        `Prelude.hashWithSalt` conditionalToken+        `Prelude.hashWithSalt` currentApplicationVersionId+        `Prelude.hashWithSalt` applicationName+        `Prelude.hashWithSalt` vpcConfigurationId++instance+  Prelude.NFData+    DeleteApplicationVpcConfiguration+  where+  rnf DeleteApplicationVpcConfiguration' {..} =+    Prelude.rnf conditionalToken+      `Prelude.seq` Prelude.rnf currentApplicationVersionId+      `Prelude.seq` Prelude.rnf applicationName+      `Prelude.seq` Prelude.rnf vpcConfigurationId++instance+  Data.ToHeaders+    DeleteApplicationVpcConfiguration+  where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "X-Amz-Target"+              Data.=# ( "KinesisAnalytics_20180523.DeleteApplicationVpcConfiguration" ::+                          Prelude.ByteString+                      ),+            "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance+  Data.ToJSON+    DeleteApplicationVpcConfiguration+  where+  toJSON DeleteApplicationVpcConfiguration' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("ConditionalToken" Data..=)+              Prelude.<$> conditionalToken,+            ("CurrentApplicationVersionId" Data..=)+              Prelude.<$> currentApplicationVersionId,+            Prelude.Just+              ("ApplicationName" Data..= applicationName),+            Prelude.Just+              ("VpcConfigurationId" Data..= vpcConfigurationId)+          ]+      )++instance+  Data.ToPath+    DeleteApplicationVpcConfiguration+  where+  toPath = Prelude.const "/"++instance+  Data.ToQuery+    DeleteApplicationVpcConfiguration+  where+  toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDeleteApplicationVpcConfigurationResponse' smart constructor.+data DeleteApplicationVpcConfigurationResponse = DeleteApplicationVpcConfigurationResponse'+  { -- | The ARN of the Kinesis Data Analytics application.+    applicationARN :: Prelude.Maybe Prelude.Text,+    -- | The updated version ID of the application.+    applicationVersionId :: Prelude.Maybe Prelude.Natural,+    -- | The response's http status code.+    httpStatus :: Prelude.Int+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteApplicationVpcConfigurationResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applicationARN', 'deleteApplicationVpcConfigurationResponse_applicationARN' - The ARN of the Kinesis Data Analytics application.+--+-- 'applicationVersionId', 'deleteApplicationVpcConfigurationResponse_applicationVersionId' - The updated version ID of the application.+--+-- 'httpStatus', 'deleteApplicationVpcConfigurationResponse_httpStatus' - The response's http status code.+newDeleteApplicationVpcConfigurationResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  DeleteApplicationVpcConfigurationResponse+newDeleteApplicationVpcConfigurationResponse+  pHttpStatus_ =+    DeleteApplicationVpcConfigurationResponse'+      { applicationARN =+          Prelude.Nothing,+        applicationVersionId =+          Prelude.Nothing,+        httpStatus = pHttpStatus_+      }++-- | The ARN of the Kinesis Data Analytics application.+deleteApplicationVpcConfigurationResponse_applicationARN :: Lens.Lens' DeleteApplicationVpcConfigurationResponse (Prelude.Maybe Prelude.Text)+deleteApplicationVpcConfigurationResponse_applicationARN = Lens.lens (\DeleteApplicationVpcConfigurationResponse' {applicationARN} -> applicationARN) (\s@DeleteApplicationVpcConfigurationResponse' {} a -> s {applicationARN = a} :: DeleteApplicationVpcConfigurationResponse)++-- | The updated version ID of the application.+deleteApplicationVpcConfigurationResponse_applicationVersionId :: Lens.Lens' DeleteApplicationVpcConfigurationResponse (Prelude.Maybe Prelude.Natural)+deleteApplicationVpcConfigurationResponse_applicationVersionId = Lens.lens (\DeleteApplicationVpcConfigurationResponse' {applicationVersionId} -> applicationVersionId) (\s@DeleteApplicationVpcConfigurationResponse' {} a -> s {applicationVersionId = a} :: DeleteApplicationVpcConfigurationResponse)++-- | The response's http status code.+deleteApplicationVpcConfigurationResponse_httpStatus :: Lens.Lens' DeleteApplicationVpcConfigurationResponse Prelude.Int+deleteApplicationVpcConfigurationResponse_httpStatus = Lens.lens (\DeleteApplicationVpcConfigurationResponse' {httpStatus} -> httpStatus) (\s@DeleteApplicationVpcConfigurationResponse' {} a -> s {httpStatus = a} :: DeleteApplicationVpcConfigurationResponse)++instance+  Prelude.NFData+    DeleteApplicationVpcConfigurationResponse+  where+  rnf DeleteApplicationVpcConfigurationResponse' {..} =+    Prelude.rnf applicationARN+      `Prelude.seq` Prelude.rnf applicationVersionId+      `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/KinesisAnalyticsV2/DescribeApplication.hs view
@@ -0,0 +1,202 @@+{-# 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.KinesisAnalyticsV2.DescribeApplication+-- 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 information about a specific Kinesis Data Analytics application.+--+-- If you want to retrieve a list of all applications in your account, use+-- the ListApplications operation.+module Amazonka.KinesisAnalyticsV2.DescribeApplication+  ( -- * Creating a Request+    DescribeApplication (..),+    newDescribeApplication,++    -- * Request Lenses+    describeApplication_includeAdditionalDetails,+    describeApplication_applicationName,++    -- * Destructuring the Response+    DescribeApplicationResponse (..),+    newDescribeApplicationResponse,++    -- * Response Lenses+    describeApplicationResponse_httpStatus,+    describeApplicationResponse_applicationDetail,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDescribeApplication' smart constructor.+data DescribeApplication = DescribeApplication'+  { -- | Displays verbose information about a Kinesis Data Analytics application,+    -- including the application\'s job plan.+    includeAdditionalDetails :: Prelude.Maybe Prelude.Bool,+    -- | The name of the application.+    applicationName :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeApplication' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'includeAdditionalDetails', 'describeApplication_includeAdditionalDetails' - Displays verbose information about a Kinesis Data Analytics application,+-- including the application\'s job plan.+--+-- 'applicationName', 'describeApplication_applicationName' - The name of the application.+newDescribeApplication ::+  -- | 'applicationName'+  Prelude.Text ->+  DescribeApplication+newDescribeApplication pApplicationName_ =+  DescribeApplication'+    { includeAdditionalDetails =+        Prelude.Nothing,+      applicationName = pApplicationName_+    }++-- | Displays verbose information about a Kinesis Data Analytics application,+-- including the application\'s job plan.+describeApplication_includeAdditionalDetails :: Lens.Lens' DescribeApplication (Prelude.Maybe Prelude.Bool)+describeApplication_includeAdditionalDetails = Lens.lens (\DescribeApplication' {includeAdditionalDetails} -> includeAdditionalDetails) (\s@DescribeApplication' {} a -> s {includeAdditionalDetails = a} :: DescribeApplication)++-- | The name of the application.+describeApplication_applicationName :: Lens.Lens' DescribeApplication Prelude.Text+describeApplication_applicationName = Lens.lens (\DescribeApplication' {applicationName} -> applicationName) (\s@DescribeApplication' {} a -> s {applicationName = a} :: DescribeApplication)++instance Core.AWSRequest DescribeApplication where+  type+    AWSResponse DescribeApplication =+      DescribeApplicationResponse+  request overrides =+    Request.postJSON (overrides defaultService)+  response =+    Response.receiveJSON+      ( \s h x ->+          DescribeApplicationResponse'+            Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+            Prelude.<*> (x Data..:> "ApplicationDetail")+      )++instance Prelude.Hashable DescribeApplication where+  hashWithSalt _salt DescribeApplication' {..} =+    _salt+      `Prelude.hashWithSalt` includeAdditionalDetails+      `Prelude.hashWithSalt` applicationName++instance Prelude.NFData DescribeApplication where+  rnf DescribeApplication' {..} =+    Prelude.rnf includeAdditionalDetails+      `Prelude.seq` Prelude.rnf applicationName++instance Data.ToHeaders DescribeApplication where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "X-Amz-Target"+              Data.=# ( "KinesisAnalytics_20180523.DescribeApplication" ::+                          Prelude.ByteString+                      ),+            "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance Data.ToJSON DescribeApplication where+  toJSON DescribeApplication' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("IncludeAdditionalDetails" Data..=)+              Prelude.<$> includeAdditionalDetails,+            Prelude.Just+              ("ApplicationName" Data..= applicationName)+          ]+      )++instance Data.ToPath DescribeApplication where+  toPath = Prelude.const "/"++instance Data.ToQuery DescribeApplication where+  toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDescribeApplicationResponse' smart constructor.+data DescribeApplicationResponse = DescribeApplicationResponse'+  { -- | The response's http status code.+    httpStatus :: Prelude.Int,+    -- | Provides a description of the application, such as the application\'s+    -- Amazon Resource Name (ARN), status, and latest version.+    applicationDetail :: ApplicationDetail+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeApplicationResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'describeApplicationResponse_httpStatus' - The response's http status code.+--+-- 'applicationDetail', 'describeApplicationResponse_applicationDetail' - Provides a description of the application, such as the application\'s+-- Amazon Resource Name (ARN), status, and latest version.+newDescribeApplicationResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  -- | 'applicationDetail'+  ApplicationDetail ->+  DescribeApplicationResponse+newDescribeApplicationResponse+  pHttpStatus_+  pApplicationDetail_ =+    DescribeApplicationResponse'+      { httpStatus =+          pHttpStatus_,+        applicationDetail = pApplicationDetail_+      }++-- | The response's http status code.+describeApplicationResponse_httpStatus :: Lens.Lens' DescribeApplicationResponse Prelude.Int+describeApplicationResponse_httpStatus = Lens.lens (\DescribeApplicationResponse' {httpStatus} -> httpStatus) (\s@DescribeApplicationResponse' {} a -> s {httpStatus = a} :: DescribeApplicationResponse)++-- | Provides a description of the application, such as the application\'s+-- Amazon Resource Name (ARN), status, and latest version.+describeApplicationResponse_applicationDetail :: Lens.Lens' DescribeApplicationResponse ApplicationDetail+describeApplicationResponse_applicationDetail = Lens.lens (\DescribeApplicationResponse' {applicationDetail} -> applicationDetail) (\s@DescribeApplicationResponse' {} a -> s {applicationDetail = a} :: DescribeApplicationResponse)++instance Prelude.NFData DescribeApplicationResponse where+  rnf DescribeApplicationResponse' {..} =+    Prelude.rnf httpStatus+      `Prelude.seq` Prelude.rnf applicationDetail
+ gen/Amazonka/KinesisAnalyticsV2/DescribeApplicationSnapshot.hs view
@@ -0,0 +1,202 @@+{-# 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.KinesisAnalyticsV2.DescribeApplicationSnapshot+-- 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 information about a snapshot of application state data.+module Amazonka.KinesisAnalyticsV2.DescribeApplicationSnapshot+  ( -- * Creating a Request+    DescribeApplicationSnapshot (..),+    newDescribeApplicationSnapshot,++    -- * Request Lenses+    describeApplicationSnapshot_applicationName,+    describeApplicationSnapshot_snapshotName,++    -- * Destructuring the Response+    DescribeApplicationSnapshotResponse (..),+    newDescribeApplicationSnapshotResponse,++    -- * Response Lenses+    describeApplicationSnapshotResponse_httpStatus,+    describeApplicationSnapshotResponse_snapshotDetails,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDescribeApplicationSnapshot' smart constructor.+data DescribeApplicationSnapshot = DescribeApplicationSnapshot'+  { -- | The name of an existing application.+    applicationName :: Prelude.Text,+    -- | The identifier of an application snapshot. You can retrieve this value+    -- using .+    snapshotName :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeApplicationSnapshot' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applicationName', 'describeApplicationSnapshot_applicationName' - The name of an existing application.+--+-- 'snapshotName', 'describeApplicationSnapshot_snapshotName' - The identifier of an application snapshot. You can retrieve this value+-- using .+newDescribeApplicationSnapshot ::+  -- | 'applicationName'+  Prelude.Text ->+  -- | 'snapshotName'+  Prelude.Text ->+  DescribeApplicationSnapshot+newDescribeApplicationSnapshot+  pApplicationName_+  pSnapshotName_ =+    DescribeApplicationSnapshot'+      { applicationName =+          pApplicationName_,+        snapshotName = pSnapshotName_+      }++-- | The name of an existing application.+describeApplicationSnapshot_applicationName :: Lens.Lens' DescribeApplicationSnapshot Prelude.Text+describeApplicationSnapshot_applicationName = Lens.lens (\DescribeApplicationSnapshot' {applicationName} -> applicationName) (\s@DescribeApplicationSnapshot' {} a -> s {applicationName = a} :: DescribeApplicationSnapshot)++-- | The identifier of an application snapshot. You can retrieve this value+-- using .+describeApplicationSnapshot_snapshotName :: Lens.Lens' DescribeApplicationSnapshot Prelude.Text+describeApplicationSnapshot_snapshotName = Lens.lens (\DescribeApplicationSnapshot' {snapshotName} -> snapshotName) (\s@DescribeApplicationSnapshot' {} a -> s {snapshotName = a} :: DescribeApplicationSnapshot)++instance Core.AWSRequest DescribeApplicationSnapshot where+  type+    AWSResponse DescribeApplicationSnapshot =+      DescribeApplicationSnapshotResponse+  request overrides =+    Request.postJSON (overrides defaultService)+  response =+    Response.receiveJSON+      ( \s h x ->+          DescribeApplicationSnapshotResponse'+            Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+            Prelude.<*> (x Data..:> "SnapshotDetails")+      )++instance Prelude.Hashable DescribeApplicationSnapshot where+  hashWithSalt _salt DescribeApplicationSnapshot' {..} =+    _salt+      `Prelude.hashWithSalt` applicationName+      `Prelude.hashWithSalt` snapshotName++instance Prelude.NFData DescribeApplicationSnapshot where+  rnf DescribeApplicationSnapshot' {..} =+    Prelude.rnf applicationName+      `Prelude.seq` Prelude.rnf snapshotName++instance Data.ToHeaders DescribeApplicationSnapshot where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "X-Amz-Target"+              Data.=# ( "KinesisAnalytics_20180523.DescribeApplicationSnapshot" ::+                          Prelude.ByteString+                      ),+            "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance Data.ToJSON DescribeApplicationSnapshot where+  toJSON DescribeApplicationSnapshot' {..} =+    Data.object+      ( Prelude.catMaybes+          [ Prelude.Just+              ("ApplicationName" Data..= applicationName),+            Prelude.Just ("SnapshotName" Data..= snapshotName)+          ]+      )++instance Data.ToPath DescribeApplicationSnapshot where+  toPath = Prelude.const "/"++instance Data.ToQuery DescribeApplicationSnapshot where+  toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDescribeApplicationSnapshotResponse' smart constructor.+data DescribeApplicationSnapshotResponse = DescribeApplicationSnapshotResponse'+  { -- | The response's http status code.+    httpStatus :: Prelude.Int,+    -- | An object containing information about the application snapshot.+    snapshotDetails :: SnapshotDetails+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeApplicationSnapshotResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'describeApplicationSnapshotResponse_httpStatus' - The response's http status code.+--+-- 'snapshotDetails', 'describeApplicationSnapshotResponse_snapshotDetails' - An object containing information about the application snapshot.+newDescribeApplicationSnapshotResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  -- | 'snapshotDetails'+  SnapshotDetails ->+  DescribeApplicationSnapshotResponse+newDescribeApplicationSnapshotResponse+  pHttpStatus_+  pSnapshotDetails_ =+    DescribeApplicationSnapshotResponse'+      { httpStatus =+          pHttpStatus_,+        snapshotDetails = pSnapshotDetails_+      }++-- | The response's http status code.+describeApplicationSnapshotResponse_httpStatus :: Lens.Lens' DescribeApplicationSnapshotResponse Prelude.Int+describeApplicationSnapshotResponse_httpStatus = Lens.lens (\DescribeApplicationSnapshotResponse' {httpStatus} -> httpStatus) (\s@DescribeApplicationSnapshotResponse' {} a -> s {httpStatus = a} :: DescribeApplicationSnapshotResponse)++-- | An object containing information about the application snapshot.+describeApplicationSnapshotResponse_snapshotDetails :: Lens.Lens' DescribeApplicationSnapshotResponse SnapshotDetails+describeApplicationSnapshotResponse_snapshotDetails = Lens.lens (\DescribeApplicationSnapshotResponse' {snapshotDetails} -> snapshotDetails) (\s@DescribeApplicationSnapshotResponse' {} a -> s {snapshotDetails = a} :: DescribeApplicationSnapshotResponse)++instance+  Prelude.NFData+    DescribeApplicationSnapshotResponse+  where+  rnf DescribeApplicationSnapshotResponse' {..} =+    Prelude.rnf httpStatus+      `Prelude.seq` Prelude.rnf snapshotDetails
+ gen/Amazonka/KinesisAnalyticsV2/DescribeApplicationVersion.hs view
@@ -0,0 +1,208 @@+{-# 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.KinesisAnalyticsV2.DescribeApplicationVersion+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Provides a detailed description of a specified version of the+-- application. To see a list of all the versions of an application, invoke+-- the ListApplicationVersions operation.+--+-- This operation is supported only for Amazon Kinesis Data Analytics for+-- Apache Flink.+module Amazonka.KinesisAnalyticsV2.DescribeApplicationVersion+  ( -- * Creating a Request+    DescribeApplicationVersion (..),+    newDescribeApplicationVersion,++    -- * Request Lenses+    describeApplicationVersion_applicationName,+    describeApplicationVersion_applicationVersionId,++    -- * Destructuring the Response+    DescribeApplicationVersionResponse (..),+    newDescribeApplicationVersionResponse,++    -- * Response Lenses+    describeApplicationVersionResponse_applicationVersionDetail,+    describeApplicationVersionResponse_httpStatus,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDescribeApplicationVersion' smart constructor.+data DescribeApplicationVersion = DescribeApplicationVersion'+  { -- | The name of the application for which you want to get the version+    -- description.+    applicationName :: Prelude.Text,+    -- | The ID of the application version for which you want to get the+    -- description.+    applicationVersionId :: Prelude.Natural+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeApplicationVersion' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applicationName', 'describeApplicationVersion_applicationName' - The name of the application for which you want to get the version+-- description.+--+-- 'applicationVersionId', 'describeApplicationVersion_applicationVersionId' - The ID of the application version for which you want to get the+-- description.+newDescribeApplicationVersion ::+  -- | 'applicationName'+  Prelude.Text ->+  -- | 'applicationVersionId'+  Prelude.Natural ->+  DescribeApplicationVersion+newDescribeApplicationVersion+  pApplicationName_+  pApplicationVersionId_ =+    DescribeApplicationVersion'+      { applicationName =+          pApplicationName_,+        applicationVersionId = pApplicationVersionId_+      }++-- | The name of the application for which you want to get the version+-- description.+describeApplicationVersion_applicationName :: Lens.Lens' DescribeApplicationVersion Prelude.Text+describeApplicationVersion_applicationName = Lens.lens (\DescribeApplicationVersion' {applicationName} -> applicationName) (\s@DescribeApplicationVersion' {} a -> s {applicationName = a} :: DescribeApplicationVersion)++-- | The ID of the application version for which you want to get the+-- description.+describeApplicationVersion_applicationVersionId :: Lens.Lens' DescribeApplicationVersion Prelude.Natural+describeApplicationVersion_applicationVersionId = Lens.lens (\DescribeApplicationVersion' {applicationVersionId} -> applicationVersionId) (\s@DescribeApplicationVersion' {} a -> s {applicationVersionId = a} :: DescribeApplicationVersion)++instance Core.AWSRequest DescribeApplicationVersion where+  type+    AWSResponse DescribeApplicationVersion =+      DescribeApplicationVersionResponse+  request overrides =+    Request.postJSON (overrides defaultService)+  response =+    Response.receiveJSON+      ( \s h x ->+          DescribeApplicationVersionResponse'+            Prelude.<$> (x Data..?> "ApplicationVersionDetail")+            Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+      )++instance Prelude.Hashable DescribeApplicationVersion where+  hashWithSalt _salt DescribeApplicationVersion' {..} =+    _salt+      `Prelude.hashWithSalt` applicationName+      `Prelude.hashWithSalt` applicationVersionId++instance Prelude.NFData DescribeApplicationVersion where+  rnf DescribeApplicationVersion' {..} =+    Prelude.rnf applicationName+      `Prelude.seq` Prelude.rnf applicationVersionId++instance Data.ToHeaders DescribeApplicationVersion where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "X-Amz-Target"+              Data.=# ( "KinesisAnalytics_20180523.DescribeApplicationVersion" ::+                          Prelude.ByteString+                      ),+            "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance Data.ToJSON DescribeApplicationVersion where+  toJSON DescribeApplicationVersion' {..} =+    Data.object+      ( Prelude.catMaybes+          [ Prelude.Just+              ("ApplicationName" Data..= applicationName),+            Prelude.Just+              ( "ApplicationVersionId"+                  Data..= applicationVersionId+              )+          ]+      )++instance Data.ToPath DescribeApplicationVersion where+  toPath = Prelude.const "/"++instance Data.ToQuery DescribeApplicationVersion where+  toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDescribeApplicationVersionResponse' smart constructor.+data DescribeApplicationVersionResponse = DescribeApplicationVersionResponse'+  { applicationVersionDetail :: Prelude.Maybe ApplicationDetail,+    -- | The response's http status code.+    httpStatus :: Prelude.Int+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeApplicationVersionResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applicationVersionDetail', 'describeApplicationVersionResponse_applicationVersionDetail' - Undocumented member.+--+-- 'httpStatus', 'describeApplicationVersionResponse_httpStatus' - The response's http status code.+newDescribeApplicationVersionResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  DescribeApplicationVersionResponse+newDescribeApplicationVersionResponse pHttpStatus_ =+  DescribeApplicationVersionResponse'+    { applicationVersionDetail =+        Prelude.Nothing,+      httpStatus = pHttpStatus_+    }++-- | Undocumented member.+describeApplicationVersionResponse_applicationVersionDetail :: Lens.Lens' DescribeApplicationVersionResponse (Prelude.Maybe ApplicationDetail)+describeApplicationVersionResponse_applicationVersionDetail = Lens.lens (\DescribeApplicationVersionResponse' {applicationVersionDetail} -> applicationVersionDetail) (\s@DescribeApplicationVersionResponse' {} a -> s {applicationVersionDetail = a} :: DescribeApplicationVersionResponse)++-- | The response's http status code.+describeApplicationVersionResponse_httpStatus :: Lens.Lens' DescribeApplicationVersionResponse Prelude.Int+describeApplicationVersionResponse_httpStatus = Lens.lens (\DescribeApplicationVersionResponse' {httpStatus} -> httpStatus) (\s@DescribeApplicationVersionResponse' {} a -> s {httpStatus = a} :: DescribeApplicationVersionResponse)++instance+  Prelude.NFData+    DescribeApplicationVersionResponse+  where+  rnf DescribeApplicationVersionResponse' {..} =+    Prelude.rnf applicationVersionDetail+      `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/KinesisAnalyticsV2/DiscoverInputSchema.hs view
@@ -0,0 +1,307 @@+{-# 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.KinesisAnalyticsV2.DiscoverInputSchema+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Infers a schema for a SQL-based Kinesis Data Analytics application by+-- evaluating sample records on the specified streaming source (Kinesis+-- data stream or Kinesis Data Firehose delivery stream) or Amazon S3+-- object. In the response, the operation returns the inferred schema and+-- also the sample records that the operation used to infer the schema.+--+-- You can use the inferred schema when configuring a streaming source for+-- your application. When you create an application using the Kinesis Data+-- Analytics console, the console uses this operation to infer a schema and+-- show it in the console user interface.+module Amazonka.KinesisAnalyticsV2.DiscoverInputSchema+  ( -- * Creating a Request+    DiscoverInputSchema (..),+    newDiscoverInputSchema,++    -- * Request Lenses+    discoverInputSchema_inputProcessingConfiguration,+    discoverInputSchema_inputStartingPositionConfiguration,+    discoverInputSchema_resourceARN,+    discoverInputSchema_s3Configuration,+    discoverInputSchema_serviceExecutionRole,++    -- * Destructuring the Response+    DiscoverInputSchemaResponse (..),+    newDiscoverInputSchemaResponse,++    -- * Response Lenses+    discoverInputSchemaResponse_inputSchema,+    discoverInputSchemaResponse_parsedInputRecords,+    discoverInputSchemaResponse_processedInputRecords,+    discoverInputSchemaResponse_rawInputRecords,+    discoverInputSchemaResponse_httpStatus,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDiscoverInputSchema' smart constructor.+data DiscoverInputSchema = DiscoverInputSchema'+  { -- | The InputProcessingConfiguration to use to preprocess the records before+    -- discovering the schema of the records.+    inputProcessingConfiguration :: Prelude.Maybe InputProcessingConfiguration,+    -- | The point at which you want Kinesis Data Analytics to start reading+    -- records from the specified streaming source discovery purposes.+    inputStartingPositionConfiguration :: Prelude.Maybe InputStartingPositionConfiguration,+    -- | The Amazon Resource Name (ARN) of the streaming source.+    resourceARN :: Prelude.Maybe Prelude.Text,+    -- | Specify this parameter to discover a schema from data in an Amazon S3+    -- object.+    s3Configuration :: Prelude.Maybe S3Configuration,+    -- | The ARN of the role that is used to access the streaming source.+    serviceExecutionRole :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DiscoverInputSchema' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'inputProcessingConfiguration', 'discoverInputSchema_inputProcessingConfiguration' - The InputProcessingConfiguration to use to preprocess the records before+-- discovering the schema of the records.+--+-- 'inputStartingPositionConfiguration', 'discoverInputSchema_inputStartingPositionConfiguration' - The point at which you want Kinesis Data Analytics to start reading+-- records from the specified streaming source discovery purposes.+--+-- 'resourceARN', 'discoverInputSchema_resourceARN' - The Amazon Resource Name (ARN) of the streaming source.+--+-- 's3Configuration', 'discoverInputSchema_s3Configuration' - Specify this parameter to discover a schema from data in an Amazon S3+-- object.+--+-- 'serviceExecutionRole', 'discoverInputSchema_serviceExecutionRole' - The ARN of the role that is used to access the streaming source.+newDiscoverInputSchema ::+  -- | 'serviceExecutionRole'+  Prelude.Text ->+  DiscoverInputSchema+newDiscoverInputSchema pServiceExecutionRole_ =+  DiscoverInputSchema'+    { inputProcessingConfiguration =+        Prelude.Nothing,+      inputStartingPositionConfiguration = Prelude.Nothing,+      resourceARN = Prelude.Nothing,+      s3Configuration = Prelude.Nothing,+      serviceExecutionRole = pServiceExecutionRole_+    }++-- | The InputProcessingConfiguration to use to preprocess the records before+-- discovering the schema of the records.+discoverInputSchema_inputProcessingConfiguration :: Lens.Lens' DiscoverInputSchema (Prelude.Maybe InputProcessingConfiguration)+discoverInputSchema_inputProcessingConfiguration = Lens.lens (\DiscoverInputSchema' {inputProcessingConfiguration} -> inputProcessingConfiguration) (\s@DiscoverInputSchema' {} a -> s {inputProcessingConfiguration = a} :: DiscoverInputSchema)++-- | The point at which you want Kinesis Data Analytics to start reading+-- records from the specified streaming source discovery purposes.+discoverInputSchema_inputStartingPositionConfiguration :: Lens.Lens' DiscoverInputSchema (Prelude.Maybe InputStartingPositionConfiguration)+discoverInputSchema_inputStartingPositionConfiguration = Lens.lens (\DiscoverInputSchema' {inputStartingPositionConfiguration} -> inputStartingPositionConfiguration) (\s@DiscoverInputSchema' {} a -> s {inputStartingPositionConfiguration = a} :: DiscoverInputSchema)++-- | The Amazon Resource Name (ARN) of the streaming source.+discoverInputSchema_resourceARN :: Lens.Lens' DiscoverInputSchema (Prelude.Maybe Prelude.Text)+discoverInputSchema_resourceARN = Lens.lens (\DiscoverInputSchema' {resourceARN} -> resourceARN) (\s@DiscoverInputSchema' {} a -> s {resourceARN = a} :: DiscoverInputSchema)++-- | Specify this parameter to discover a schema from data in an Amazon S3+-- object.+discoverInputSchema_s3Configuration :: Lens.Lens' DiscoverInputSchema (Prelude.Maybe S3Configuration)+discoverInputSchema_s3Configuration = Lens.lens (\DiscoverInputSchema' {s3Configuration} -> s3Configuration) (\s@DiscoverInputSchema' {} a -> s {s3Configuration = a} :: DiscoverInputSchema)++-- | The ARN of the role that is used to access the streaming source.+discoverInputSchema_serviceExecutionRole :: Lens.Lens' DiscoverInputSchema Prelude.Text+discoverInputSchema_serviceExecutionRole = Lens.lens (\DiscoverInputSchema' {serviceExecutionRole} -> serviceExecutionRole) (\s@DiscoverInputSchema' {} a -> s {serviceExecutionRole = a} :: DiscoverInputSchema)++instance Core.AWSRequest DiscoverInputSchema where+  type+    AWSResponse DiscoverInputSchema =+      DiscoverInputSchemaResponse+  request overrides =+    Request.postJSON (overrides defaultService)+  response =+    Response.receiveJSON+      ( \s h x ->+          DiscoverInputSchemaResponse'+            Prelude.<$> (x Data..?> "InputSchema")+            Prelude.<*> ( x+                            Data..?> "ParsedInputRecords"+                            Core..!@ Prelude.mempty+                        )+            Prelude.<*> ( x+                            Data..?> "ProcessedInputRecords"+                            Core..!@ Prelude.mempty+                        )+            Prelude.<*> ( x+                            Data..?> "RawInputRecords"+                            Core..!@ Prelude.mempty+                        )+            Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+      )++instance Prelude.Hashable DiscoverInputSchema where+  hashWithSalt _salt DiscoverInputSchema' {..} =+    _salt+      `Prelude.hashWithSalt` inputProcessingConfiguration+      `Prelude.hashWithSalt` inputStartingPositionConfiguration+      `Prelude.hashWithSalt` resourceARN+      `Prelude.hashWithSalt` s3Configuration+      `Prelude.hashWithSalt` serviceExecutionRole++instance Prelude.NFData DiscoverInputSchema where+  rnf DiscoverInputSchema' {..} =+    Prelude.rnf inputProcessingConfiguration+      `Prelude.seq` Prelude.rnf inputStartingPositionConfiguration+      `Prelude.seq` Prelude.rnf resourceARN+      `Prelude.seq` Prelude.rnf s3Configuration+      `Prelude.seq` Prelude.rnf serviceExecutionRole++instance Data.ToHeaders DiscoverInputSchema where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "X-Amz-Target"+              Data.=# ( "KinesisAnalytics_20180523.DiscoverInputSchema" ::+                          Prelude.ByteString+                      ),+            "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance Data.ToJSON DiscoverInputSchema where+  toJSON DiscoverInputSchema' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("InputProcessingConfiguration" Data..=)+              Prelude.<$> inputProcessingConfiguration,+            ("InputStartingPositionConfiguration" Data..=)+              Prelude.<$> inputStartingPositionConfiguration,+            ("ResourceARN" Data..=) Prelude.<$> resourceARN,+            ("S3Configuration" Data..=)+              Prelude.<$> s3Configuration,+            Prelude.Just+              ( "ServiceExecutionRole"+                  Data..= serviceExecutionRole+              )+          ]+      )++instance Data.ToPath DiscoverInputSchema where+  toPath = Prelude.const "/"++instance Data.ToQuery DiscoverInputSchema where+  toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDiscoverInputSchemaResponse' smart constructor.+data DiscoverInputSchemaResponse = DiscoverInputSchemaResponse'+  { -- | The schema inferred from the streaming source. It identifies the format+    -- of the data in the streaming source and how each data element maps to+    -- corresponding columns in the in-application stream that you can create.+    inputSchema :: Prelude.Maybe SourceSchema,+    -- | An array of elements, where each element corresponds to a row in a+    -- stream record (a stream record can have more than one row).+    parsedInputRecords :: Prelude.Maybe [[Prelude.Text]],+    -- | The stream data that was modified by the processor specified in the+    -- @InputProcessingConfiguration@ parameter.+    processedInputRecords :: Prelude.Maybe [Prelude.Text],+    -- | The raw stream data that was sampled to infer the schema.+    rawInputRecords :: Prelude.Maybe [Prelude.Text],+    -- | The response's http status code.+    httpStatus :: Prelude.Int+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DiscoverInputSchemaResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'inputSchema', 'discoverInputSchemaResponse_inputSchema' - The schema inferred from the streaming source. It identifies the format+-- of the data in the streaming source and how each data element maps to+-- corresponding columns in the in-application stream that you can create.+--+-- 'parsedInputRecords', 'discoverInputSchemaResponse_parsedInputRecords' - An array of elements, where each element corresponds to a row in a+-- stream record (a stream record can have more than one row).+--+-- 'processedInputRecords', 'discoverInputSchemaResponse_processedInputRecords' - The stream data that was modified by the processor specified in the+-- @InputProcessingConfiguration@ parameter.+--+-- 'rawInputRecords', 'discoverInputSchemaResponse_rawInputRecords' - The raw stream data that was sampled to infer the schema.+--+-- 'httpStatus', 'discoverInputSchemaResponse_httpStatus' - The response's http status code.+newDiscoverInputSchemaResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  DiscoverInputSchemaResponse+newDiscoverInputSchemaResponse pHttpStatus_ =+  DiscoverInputSchemaResponse'+    { inputSchema =+        Prelude.Nothing,+      parsedInputRecords = Prelude.Nothing,+      processedInputRecords = Prelude.Nothing,+      rawInputRecords = Prelude.Nothing,+      httpStatus = pHttpStatus_+    }++-- | The schema inferred from the streaming source. It identifies the format+-- of the data in the streaming source and how each data element maps to+-- corresponding columns in the in-application stream that you can create.+discoverInputSchemaResponse_inputSchema :: Lens.Lens' DiscoverInputSchemaResponse (Prelude.Maybe SourceSchema)+discoverInputSchemaResponse_inputSchema = Lens.lens (\DiscoverInputSchemaResponse' {inputSchema} -> inputSchema) (\s@DiscoverInputSchemaResponse' {} a -> s {inputSchema = a} :: DiscoverInputSchemaResponse)++-- | An array of elements, where each element corresponds to a row in a+-- stream record (a stream record can have more than one row).+discoverInputSchemaResponse_parsedInputRecords :: Lens.Lens' DiscoverInputSchemaResponse (Prelude.Maybe [[Prelude.Text]])+discoverInputSchemaResponse_parsedInputRecords = Lens.lens (\DiscoverInputSchemaResponse' {parsedInputRecords} -> parsedInputRecords) (\s@DiscoverInputSchemaResponse' {} a -> s {parsedInputRecords = a} :: DiscoverInputSchemaResponse) Prelude.. Lens.mapping Lens.coerced++-- | The stream data that was modified by the processor specified in the+-- @InputProcessingConfiguration@ parameter.+discoverInputSchemaResponse_processedInputRecords :: Lens.Lens' DiscoverInputSchemaResponse (Prelude.Maybe [Prelude.Text])+discoverInputSchemaResponse_processedInputRecords = Lens.lens (\DiscoverInputSchemaResponse' {processedInputRecords} -> processedInputRecords) (\s@DiscoverInputSchemaResponse' {} a -> s {processedInputRecords = a} :: DiscoverInputSchemaResponse) Prelude.. Lens.mapping Lens.coerced++-- | The raw stream data that was sampled to infer the schema.+discoverInputSchemaResponse_rawInputRecords :: Lens.Lens' DiscoverInputSchemaResponse (Prelude.Maybe [Prelude.Text])+discoverInputSchemaResponse_rawInputRecords = Lens.lens (\DiscoverInputSchemaResponse' {rawInputRecords} -> rawInputRecords) (\s@DiscoverInputSchemaResponse' {} a -> s {rawInputRecords = a} :: DiscoverInputSchemaResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+discoverInputSchemaResponse_httpStatus :: Lens.Lens' DiscoverInputSchemaResponse Prelude.Int+discoverInputSchemaResponse_httpStatus = Lens.lens (\DiscoverInputSchemaResponse' {httpStatus} -> httpStatus) (\s@DiscoverInputSchemaResponse' {} a -> s {httpStatus = a} :: DiscoverInputSchemaResponse)++instance Prelude.NFData DiscoverInputSchemaResponse where+  rnf DiscoverInputSchemaResponse' {..} =+    Prelude.rnf inputSchema+      `Prelude.seq` Prelude.rnf parsedInputRecords+      `Prelude.seq` Prelude.rnf processedInputRecords+      `Prelude.seq` Prelude.rnf rawInputRecords+      `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/KinesisAnalyticsV2/Lens.hs view
@@ -0,0 +1,960 @@+{-# 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.KinesisAnalyticsV2.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.KinesisAnalyticsV2.Lens+  ( -- * Operations++    -- ** AddApplicationCloudWatchLoggingOption+    addApplicationCloudWatchLoggingOption_conditionalToken,+    addApplicationCloudWatchLoggingOption_currentApplicationVersionId,+    addApplicationCloudWatchLoggingOption_applicationName,+    addApplicationCloudWatchLoggingOption_cloudWatchLoggingOption,+    addApplicationCloudWatchLoggingOptionResponse_applicationARN,+    addApplicationCloudWatchLoggingOptionResponse_applicationVersionId,+    addApplicationCloudWatchLoggingOptionResponse_cloudWatchLoggingOptionDescriptions,+    addApplicationCloudWatchLoggingOptionResponse_httpStatus,++    -- ** AddApplicationInput+    addApplicationInput_applicationName,+    addApplicationInput_currentApplicationVersionId,+    addApplicationInput_input,+    addApplicationInputResponse_applicationARN,+    addApplicationInputResponse_applicationVersionId,+    addApplicationInputResponse_inputDescriptions,+    addApplicationInputResponse_httpStatus,++    -- ** AddApplicationInputProcessingConfiguration+    addApplicationInputProcessingConfiguration_applicationName,+    addApplicationInputProcessingConfiguration_currentApplicationVersionId,+    addApplicationInputProcessingConfiguration_inputId,+    addApplicationInputProcessingConfiguration_inputProcessingConfiguration,+    addApplicationInputProcessingConfigurationResponse_applicationARN,+    addApplicationInputProcessingConfigurationResponse_applicationVersionId,+    addApplicationInputProcessingConfigurationResponse_inputId,+    addApplicationInputProcessingConfigurationResponse_inputProcessingConfigurationDescription,+    addApplicationInputProcessingConfigurationResponse_httpStatus,++    -- ** AddApplicationOutput+    addApplicationOutput_applicationName,+    addApplicationOutput_currentApplicationVersionId,+    addApplicationOutput_output,+    addApplicationOutputResponse_applicationARN,+    addApplicationOutputResponse_applicationVersionId,+    addApplicationOutputResponse_outputDescriptions,+    addApplicationOutputResponse_httpStatus,++    -- ** AddApplicationReferenceDataSource+    addApplicationReferenceDataSource_applicationName,+    addApplicationReferenceDataSource_currentApplicationVersionId,+    addApplicationReferenceDataSource_referenceDataSource,+    addApplicationReferenceDataSourceResponse_applicationARN,+    addApplicationReferenceDataSourceResponse_applicationVersionId,+    addApplicationReferenceDataSourceResponse_referenceDataSourceDescriptions,+    addApplicationReferenceDataSourceResponse_httpStatus,++    -- ** AddApplicationVpcConfiguration+    addApplicationVpcConfiguration_conditionalToken,+    addApplicationVpcConfiguration_currentApplicationVersionId,+    addApplicationVpcConfiguration_applicationName,+    addApplicationVpcConfiguration_vpcConfiguration,+    addApplicationVpcConfigurationResponse_applicationARN,+    addApplicationVpcConfigurationResponse_applicationVersionId,+    addApplicationVpcConfigurationResponse_vpcConfigurationDescription,+    addApplicationVpcConfigurationResponse_httpStatus,++    -- ** CreateApplication+    createApplication_applicationConfiguration,+    createApplication_applicationDescription,+    createApplication_applicationMode,+    createApplication_cloudWatchLoggingOptions,+    createApplication_tags,+    createApplication_applicationName,+    createApplication_runtimeEnvironment,+    createApplication_serviceExecutionRole,+    createApplicationResponse_httpStatus,+    createApplicationResponse_applicationDetail,++    -- ** CreateApplicationPresignedUrl+    createApplicationPresignedUrl_sessionExpirationDurationInSeconds,+    createApplicationPresignedUrl_applicationName,+    createApplicationPresignedUrl_urlType,+    createApplicationPresignedUrlResponse_authorizedUrl,+    createApplicationPresignedUrlResponse_httpStatus,++    -- ** CreateApplicationSnapshot+    createApplicationSnapshot_applicationName,+    createApplicationSnapshot_snapshotName,+    createApplicationSnapshotResponse_httpStatus,++    -- ** DeleteApplication+    deleteApplication_applicationName,+    deleteApplication_createTimestamp,+    deleteApplicationResponse_httpStatus,++    -- ** DeleteApplicationCloudWatchLoggingOption+    deleteApplicationCloudWatchLoggingOption_conditionalToken,+    deleteApplicationCloudWatchLoggingOption_currentApplicationVersionId,+    deleteApplicationCloudWatchLoggingOption_applicationName,+    deleteApplicationCloudWatchLoggingOption_cloudWatchLoggingOptionId,+    deleteApplicationCloudWatchLoggingOptionResponse_applicationARN,+    deleteApplicationCloudWatchLoggingOptionResponse_applicationVersionId,+    deleteApplicationCloudWatchLoggingOptionResponse_cloudWatchLoggingOptionDescriptions,+    deleteApplicationCloudWatchLoggingOptionResponse_httpStatus,++    -- ** DeleteApplicationInputProcessingConfiguration+    deleteApplicationInputProcessingConfiguration_applicationName,+    deleteApplicationInputProcessingConfiguration_currentApplicationVersionId,+    deleteApplicationInputProcessingConfiguration_inputId,+    deleteApplicationInputProcessingConfigurationResponse_applicationARN,+    deleteApplicationInputProcessingConfigurationResponse_applicationVersionId,+    deleteApplicationInputProcessingConfigurationResponse_httpStatus,++    -- ** DeleteApplicationOutput+    deleteApplicationOutput_applicationName,+    deleteApplicationOutput_currentApplicationVersionId,+    deleteApplicationOutput_outputId,+    deleteApplicationOutputResponse_applicationARN,+    deleteApplicationOutputResponse_applicationVersionId,+    deleteApplicationOutputResponse_httpStatus,++    -- ** DeleteApplicationReferenceDataSource+    deleteApplicationReferenceDataSource_applicationName,+    deleteApplicationReferenceDataSource_currentApplicationVersionId,+    deleteApplicationReferenceDataSource_referenceId,+    deleteApplicationReferenceDataSourceResponse_applicationARN,+    deleteApplicationReferenceDataSourceResponse_applicationVersionId,+    deleteApplicationReferenceDataSourceResponse_httpStatus,++    -- ** DeleteApplicationSnapshot+    deleteApplicationSnapshot_applicationName,+    deleteApplicationSnapshot_snapshotName,+    deleteApplicationSnapshot_snapshotCreationTimestamp,+    deleteApplicationSnapshotResponse_httpStatus,++    -- ** DeleteApplicationVpcConfiguration+    deleteApplicationVpcConfiguration_conditionalToken,+    deleteApplicationVpcConfiguration_currentApplicationVersionId,+    deleteApplicationVpcConfiguration_applicationName,+    deleteApplicationVpcConfiguration_vpcConfigurationId,+    deleteApplicationVpcConfigurationResponse_applicationARN,+    deleteApplicationVpcConfigurationResponse_applicationVersionId,+    deleteApplicationVpcConfigurationResponse_httpStatus,++    -- ** DescribeApplication+    describeApplication_includeAdditionalDetails,+    describeApplication_applicationName,+    describeApplicationResponse_httpStatus,+    describeApplicationResponse_applicationDetail,++    -- ** DescribeApplicationSnapshot+    describeApplicationSnapshot_applicationName,+    describeApplicationSnapshot_snapshotName,+    describeApplicationSnapshotResponse_httpStatus,+    describeApplicationSnapshotResponse_snapshotDetails,++    -- ** DescribeApplicationVersion+    describeApplicationVersion_applicationName,+    describeApplicationVersion_applicationVersionId,+    describeApplicationVersionResponse_applicationVersionDetail,+    describeApplicationVersionResponse_httpStatus,++    -- ** DiscoverInputSchema+    discoverInputSchema_inputProcessingConfiguration,+    discoverInputSchema_inputStartingPositionConfiguration,+    discoverInputSchema_resourceARN,+    discoverInputSchema_s3Configuration,+    discoverInputSchema_serviceExecutionRole,+    discoverInputSchemaResponse_inputSchema,+    discoverInputSchemaResponse_parsedInputRecords,+    discoverInputSchemaResponse_processedInputRecords,+    discoverInputSchemaResponse_rawInputRecords,+    discoverInputSchemaResponse_httpStatus,++    -- ** ListApplicationSnapshots+    listApplicationSnapshots_limit,+    listApplicationSnapshots_nextToken,+    listApplicationSnapshots_applicationName,+    listApplicationSnapshotsResponse_nextToken,+    listApplicationSnapshotsResponse_snapshotSummaries,+    listApplicationSnapshotsResponse_httpStatus,++    -- ** ListApplicationVersions+    listApplicationVersions_limit,+    listApplicationVersions_nextToken,+    listApplicationVersions_applicationName,+    listApplicationVersionsResponse_applicationVersionSummaries,+    listApplicationVersionsResponse_nextToken,+    listApplicationVersionsResponse_httpStatus,++    -- ** ListApplications+    listApplications_limit,+    listApplications_nextToken,+    listApplicationsResponse_nextToken,+    listApplicationsResponse_httpStatus,+    listApplicationsResponse_applicationSummaries,++    -- ** ListTagsForResource+    listTagsForResource_resourceARN,+    listTagsForResourceResponse_tags,+    listTagsForResourceResponse_httpStatus,++    -- ** RollbackApplication+    rollbackApplication_applicationName,+    rollbackApplication_currentApplicationVersionId,+    rollbackApplicationResponse_httpStatus,+    rollbackApplicationResponse_applicationDetail,++    -- ** StartApplication+    startApplication_runConfiguration,+    startApplication_applicationName,+    startApplicationResponse_httpStatus,++    -- ** StopApplication+    stopApplication_force,+    stopApplication_applicationName,+    stopApplicationResponse_httpStatus,++    -- ** TagResource+    tagResource_resourceARN,+    tagResource_tags,+    tagResourceResponse_httpStatus,++    -- ** UntagResource+    untagResource_resourceARN,+    untagResource_tagKeys,+    untagResourceResponse_httpStatus,++    -- ** UpdateApplication+    updateApplication_applicationConfigurationUpdate,+    updateApplication_cloudWatchLoggingOptionUpdates,+    updateApplication_conditionalToken,+    updateApplication_currentApplicationVersionId,+    updateApplication_runConfigurationUpdate,+    updateApplication_serviceExecutionRoleUpdate,+    updateApplication_applicationName,+    updateApplicationResponse_httpStatus,+    updateApplicationResponse_applicationDetail,++    -- ** UpdateApplicationMaintenanceConfiguration+    updateApplicationMaintenanceConfiguration_applicationName,+    updateApplicationMaintenanceConfiguration_applicationMaintenanceConfigurationUpdate,+    updateApplicationMaintenanceConfigurationResponse_applicationARN,+    updateApplicationMaintenanceConfigurationResponse_applicationMaintenanceConfigurationDescription,+    updateApplicationMaintenanceConfigurationResponse_httpStatus,++    -- * Types++    -- ** ApplicationCodeConfiguration+    applicationCodeConfiguration_codeContent,+    applicationCodeConfiguration_codeContentType,++    -- ** ApplicationCodeConfigurationDescription+    applicationCodeConfigurationDescription_codeContentDescription,+    applicationCodeConfigurationDescription_codeContentType,++    -- ** ApplicationCodeConfigurationUpdate+    applicationCodeConfigurationUpdate_codeContentTypeUpdate,+    applicationCodeConfigurationUpdate_codeContentUpdate,++    -- ** ApplicationConfiguration+    applicationConfiguration_applicationCodeConfiguration,+    applicationConfiguration_applicationSnapshotConfiguration,+    applicationConfiguration_environmentProperties,+    applicationConfiguration_flinkApplicationConfiguration,+    applicationConfiguration_sqlApplicationConfiguration,+    applicationConfiguration_vpcConfigurations,+    applicationConfiguration_zeppelinApplicationConfiguration,++    -- ** ApplicationConfigurationDescription+    applicationConfigurationDescription_applicationCodeConfigurationDescription,+    applicationConfigurationDescription_applicationSnapshotConfigurationDescription,+    applicationConfigurationDescription_environmentPropertyDescriptions,+    applicationConfigurationDescription_flinkApplicationConfigurationDescription,+    applicationConfigurationDescription_runConfigurationDescription,+    applicationConfigurationDescription_sqlApplicationConfigurationDescription,+    applicationConfigurationDescription_vpcConfigurationDescriptions,+    applicationConfigurationDescription_zeppelinApplicationConfigurationDescription,++    -- ** ApplicationConfigurationUpdate+    applicationConfigurationUpdate_applicationCodeConfigurationUpdate,+    applicationConfigurationUpdate_applicationSnapshotConfigurationUpdate,+    applicationConfigurationUpdate_environmentPropertyUpdates,+    applicationConfigurationUpdate_flinkApplicationConfigurationUpdate,+    applicationConfigurationUpdate_sqlApplicationConfigurationUpdate,+    applicationConfigurationUpdate_vpcConfigurationUpdates,+    applicationConfigurationUpdate_zeppelinApplicationConfigurationUpdate,++    -- ** ApplicationDetail+    applicationDetail_applicationConfigurationDescription,+    applicationDetail_applicationDescription,+    applicationDetail_applicationMaintenanceConfigurationDescription,+    applicationDetail_applicationMode,+    applicationDetail_applicationVersionRolledBackFrom,+    applicationDetail_applicationVersionRolledBackTo,+    applicationDetail_applicationVersionUpdatedFrom,+    applicationDetail_cloudWatchLoggingOptionDescriptions,+    applicationDetail_conditionalToken,+    applicationDetail_createTimestamp,+    applicationDetail_lastUpdateTimestamp,+    applicationDetail_serviceExecutionRole,+    applicationDetail_applicationARN,+    applicationDetail_applicationName,+    applicationDetail_runtimeEnvironment,+    applicationDetail_applicationStatus,+    applicationDetail_applicationVersionId,++    -- ** ApplicationMaintenanceConfigurationDescription+    applicationMaintenanceConfigurationDescription_applicationMaintenanceWindowStartTime,+    applicationMaintenanceConfigurationDescription_applicationMaintenanceWindowEndTime,++    -- ** ApplicationMaintenanceConfigurationUpdate+    applicationMaintenanceConfigurationUpdate_applicationMaintenanceWindowStartTimeUpdate,++    -- ** ApplicationRestoreConfiguration+    applicationRestoreConfiguration_snapshotName,+    applicationRestoreConfiguration_applicationRestoreType,++    -- ** ApplicationSnapshotConfiguration+    applicationSnapshotConfiguration_snapshotsEnabled,++    -- ** ApplicationSnapshotConfigurationDescription+    applicationSnapshotConfigurationDescription_snapshotsEnabled,++    -- ** ApplicationSnapshotConfigurationUpdate+    applicationSnapshotConfigurationUpdate_snapshotsEnabledUpdate,++    -- ** ApplicationSummary+    applicationSummary_applicationMode,+    applicationSummary_applicationName,+    applicationSummary_applicationARN,+    applicationSummary_applicationStatus,+    applicationSummary_applicationVersionId,+    applicationSummary_runtimeEnvironment,++    -- ** ApplicationVersionSummary+    applicationVersionSummary_applicationVersionId,+    applicationVersionSummary_applicationStatus,++    -- ** CSVMappingParameters+    cSVMappingParameters_recordRowDelimiter,+    cSVMappingParameters_recordColumnDelimiter,++    -- ** CatalogConfiguration+    catalogConfiguration_glueDataCatalogConfiguration,++    -- ** CatalogConfigurationDescription+    catalogConfigurationDescription_glueDataCatalogConfigurationDescription,++    -- ** CatalogConfigurationUpdate+    catalogConfigurationUpdate_glueDataCatalogConfigurationUpdate,++    -- ** CheckpointConfiguration+    checkpointConfiguration_checkpointInterval,+    checkpointConfiguration_checkpointingEnabled,+    checkpointConfiguration_minPauseBetweenCheckpoints,+    checkpointConfiguration_configurationType,++    -- ** CheckpointConfigurationDescription+    checkpointConfigurationDescription_checkpointInterval,+    checkpointConfigurationDescription_checkpointingEnabled,+    checkpointConfigurationDescription_configurationType,+    checkpointConfigurationDescription_minPauseBetweenCheckpoints,++    -- ** CheckpointConfigurationUpdate+    checkpointConfigurationUpdate_checkpointIntervalUpdate,+    checkpointConfigurationUpdate_checkpointingEnabledUpdate,+    checkpointConfigurationUpdate_configurationTypeUpdate,+    checkpointConfigurationUpdate_minPauseBetweenCheckpointsUpdate,++    -- ** CloudWatchLoggingOption+    cloudWatchLoggingOption_logStreamARN,++    -- ** CloudWatchLoggingOptionDescription+    cloudWatchLoggingOptionDescription_cloudWatchLoggingOptionId,+    cloudWatchLoggingOptionDescription_roleARN,+    cloudWatchLoggingOptionDescription_logStreamARN,++    -- ** CloudWatchLoggingOptionUpdate+    cloudWatchLoggingOptionUpdate_logStreamARNUpdate,+    cloudWatchLoggingOptionUpdate_cloudWatchLoggingOptionId,++    -- ** CodeContent+    codeContent_s3ContentLocation,+    codeContent_textContent,+    codeContent_zipFileContent,++    -- ** CodeContentDescription+    codeContentDescription_codeMD5,+    codeContentDescription_codeSize,+    codeContentDescription_s3ApplicationCodeLocationDescription,+    codeContentDescription_textContent,++    -- ** CodeContentUpdate+    codeContentUpdate_s3ContentLocationUpdate,+    codeContentUpdate_textContentUpdate,+    codeContentUpdate_zipFileContentUpdate,++    -- ** CustomArtifactConfiguration+    customArtifactConfiguration_mavenReference,+    customArtifactConfiguration_s3ContentLocation,+    customArtifactConfiguration_artifactType,++    -- ** CustomArtifactConfigurationDescription+    customArtifactConfigurationDescription_artifactType,+    customArtifactConfigurationDescription_mavenReferenceDescription,+    customArtifactConfigurationDescription_s3ContentLocationDescription,++    -- ** DeployAsApplicationConfiguration+    deployAsApplicationConfiguration_s3ContentLocation,++    -- ** DeployAsApplicationConfigurationDescription+    deployAsApplicationConfigurationDescription_s3ContentLocationDescription,++    -- ** DeployAsApplicationConfigurationUpdate+    deployAsApplicationConfigurationUpdate_s3ContentLocationUpdate,++    -- ** DestinationSchema+    destinationSchema_recordFormatType,++    -- ** EnvironmentProperties+    environmentProperties_propertyGroups,++    -- ** EnvironmentPropertyDescriptions+    environmentPropertyDescriptions_propertyGroupDescriptions,++    -- ** EnvironmentPropertyUpdates+    environmentPropertyUpdates_propertyGroups,++    -- ** FlinkApplicationConfiguration+    flinkApplicationConfiguration_checkpointConfiguration,+    flinkApplicationConfiguration_monitoringConfiguration,+    flinkApplicationConfiguration_parallelismConfiguration,++    -- ** FlinkApplicationConfigurationDescription+    flinkApplicationConfigurationDescription_checkpointConfigurationDescription,+    flinkApplicationConfigurationDescription_jobPlanDescription,+    flinkApplicationConfigurationDescription_monitoringConfigurationDescription,+    flinkApplicationConfigurationDescription_parallelismConfigurationDescription,++    -- ** FlinkApplicationConfigurationUpdate+    flinkApplicationConfigurationUpdate_checkpointConfigurationUpdate,+    flinkApplicationConfigurationUpdate_monitoringConfigurationUpdate,+    flinkApplicationConfigurationUpdate_parallelismConfigurationUpdate,++    -- ** FlinkRunConfiguration+    flinkRunConfiguration_allowNonRestoredState,++    -- ** GlueDataCatalogConfiguration+    glueDataCatalogConfiguration_databaseARN,++    -- ** GlueDataCatalogConfigurationDescription+    glueDataCatalogConfigurationDescription_databaseARN,++    -- ** GlueDataCatalogConfigurationUpdate+    glueDataCatalogConfigurationUpdate_databaseARNUpdate,++    -- ** Input+    input_inputParallelism,+    input_inputProcessingConfiguration,+    input_kinesisFirehoseInput,+    input_kinesisStreamsInput,+    input_namePrefix,+    input_inputSchema,++    -- ** InputDescription+    inputDescription_inAppStreamNames,+    inputDescription_inputId,+    inputDescription_inputParallelism,+    inputDescription_inputProcessingConfigurationDescription,+    inputDescription_inputSchema,+    inputDescription_inputStartingPositionConfiguration,+    inputDescription_kinesisFirehoseInputDescription,+    inputDescription_kinesisStreamsInputDescription,+    inputDescription_namePrefix,++    -- ** InputLambdaProcessor+    inputLambdaProcessor_resourceARN,++    -- ** InputLambdaProcessorDescription+    inputLambdaProcessorDescription_roleARN,+    inputLambdaProcessorDescription_resourceARN,++    -- ** InputLambdaProcessorUpdate+    inputLambdaProcessorUpdate_resourceARNUpdate,++    -- ** InputParallelism+    inputParallelism_count,++    -- ** InputParallelismUpdate+    inputParallelismUpdate_countUpdate,++    -- ** InputProcessingConfiguration+    inputProcessingConfiguration_inputLambdaProcessor,++    -- ** InputProcessingConfigurationDescription+    inputProcessingConfigurationDescription_inputLambdaProcessorDescription,++    -- ** InputProcessingConfigurationUpdate+    inputProcessingConfigurationUpdate_inputLambdaProcessorUpdate,++    -- ** InputSchemaUpdate+    inputSchemaUpdate_recordColumnUpdates,+    inputSchemaUpdate_recordEncodingUpdate,+    inputSchemaUpdate_recordFormatUpdate,++    -- ** InputStartingPositionConfiguration+    inputStartingPositionConfiguration_inputStartingPosition,++    -- ** InputUpdate+    inputUpdate_inputParallelismUpdate,+    inputUpdate_inputProcessingConfigurationUpdate,+    inputUpdate_inputSchemaUpdate,+    inputUpdate_kinesisFirehoseInputUpdate,+    inputUpdate_kinesisStreamsInputUpdate,+    inputUpdate_namePrefixUpdate,+    inputUpdate_inputId,++    -- ** JSONMappingParameters+    jSONMappingParameters_recordRowPath,++    -- ** KinesisFirehoseInput+    kinesisFirehoseInput_resourceARN,++    -- ** KinesisFirehoseInputDescription+    kinesisFirehoseInputDescription_roleARN,+    kinesisFirehoseInputDescription_resourceARN,++    -- ** KinesisFirehoseInputUpdate+    kinesisFirehoseInputUpdate_resourceARNUpdate,++    -- ** KinesisFirehoseOutput+    kinesisFirehoseOutput_resourceARN,++    -- ** KinesisFirehoseOutputDescription+    kinesisFirehoseOutputDescription_roleARN,+    kinesisFirehoseOutputDescription_resourceARN,++    -- ** KinesisFirehoseOutputUpdate+    kinesisFirehoseOutputUpdate_resourceARNUpdate,++    -- ** KinesisStreamsInput+    kinesisStreamsInput_resourceARN,++    -- ** KinesisStreamsInputDescription+    kinesisStreamsInputDescription_roleARN,+    kinesisStreamsInputDescription_resourceARN,++    -- ** KinesisStreamsInputUpdate+    kinesisStreamsInputUpdate_resourceARNUpdate,++    -- ** KinesisStreamsOutput+    kinesisStreamsOutput_resourceARN,++    -- ** KinesisStreamsOutputDescription+    kinesisStreamsOutputDescription_roleARN,+    kinesisStreamsOutputDescription_resourceARN,++    -- ** KinesisStreamsOutputUpdate+    kinesisStreamsOutputUpdate_resourceARNUpdate,++    -- ** LambdaOutput+    lambdaOutput_resourceARN,++    -- ** LambdaOutputDescription+    lambdaOutputDescription_roleARN,+    lambdaOutputDescription_resourceARN,++    -- ** LambdaOutputUpdate+    lambdaOutputUpdate_resourceARNUpdate,++    -- ** MappingParameters+    mappingParameters_cSVMappingParameters,+    mappingParameters_jSONMappingParameters,++    -- ** MavenReference+    mavenReference_groupId,+    mavenReference_artifactId,+    mavenReference_version,++    -- ** MonitoringConfiguration+    monitoringConfiguration_logLevel,+    monitoringConfiguration_metricsLevel,+    monitoringConfiguration_configurationType,++    -- ** MonitoringConfigurationDescription+    monitoringConfigurationDescription_configurationType,+    monitoringConfigurationDescription_logLevel,+    monitoringConfigurationDescription_metricsLevel,++    -- ** MonitoringConfigurationUpdate+    monitoringConfigurationUpdate_configurationTypeUpdate,+    monitoringConfigurationUpdate_logLevelUpdate,+    monitoringConfigurationUpdate_metricsLevelUpdate,++    -- ** Output+    output_kinesisFirehoseOutput,+    output_kinesisStreamsOutput,+    output_lambdaOutput,+    output_name,+    output_destinationSchema,++    -- ** OutputDescription+    outputDescription_destinationSchema,+    outputDescription_kinesisFirehoseOutputDescription,+    outputDescription_kinesisStreamsOutputDescription,+    outputDescription_lambdaOutputDescription,+    outputDescription_name,+    outputDescription_outputId,++    -- ** OutputUpdate+    outputUpdate_destinationSchemaUpdate,+    outputUpdate_kinesisFirehoseOutputUpdate,+    outputUpdate_kinesisStreamsOutputUpdate,+    outputUpdate_lambdaOutputUpdate,+    outputUpdate_nameUpdate,+    outputUpdate_outputId,++    -- ** ParallelismConfiguration+    parallelismConfiguration_autoScalingEnabled,+    parallelismConfiguration_parallelism,+    parallelismConfiguration_parallelismPerKPU,+    parallelismConfiguration_configurationType,++    -- ** ParallelismConfigurationDescription+    parallelismConfigurationDescription_autoScalingEnabled,+    parallelismConfigurationDescription_configurationType,+    parallelismConfigurationDescription_currentParallelism,+    parallelismConfigurationDescription_parallelism,+    parallelismConfigurationDescription_parallelismPerKPU,++    -- ** ParallelismConfigurationUpdate+    parallelismConfigurationUpdate_autoScalingEnabledUpdate,+    parallelismConfigurationUpdate_configurationTypeUpdate,+    parallelismConfigurationUpdate_parallelismPerKPUUpdate,+    parallelismConfigurationUpdate_parallelismUpdate,++    -- ** PropertyGroup+    propertyGroup_propertyGroupId,+    propertyGroup_propertyMap,++    -- ** RecordColumn+    recordColumn_mapping,+    recordColumn_name,+    recordColumn_sqlType,++    -- ** RecordFormat+    recordFormat_mappingParameters,+    recordFormat_recordFormatType,++    -- ** ReferenceDataSource+    referenceDataSource_s3ReferenceDataSource,+    referenceDataSource_tableName,+    referenceDataSource_referenceSchema,++    -- ** ReferenceDataSourceDescription+    referenceDataSourceDescription_referenceSchema,+    referenceDataSourceDescription_referenceId,+    referenceDataSourceDescription_tableName,+    referenceDataSourceDescription_s3ReferenceDataSourceDescription,++    -- ** ReferenceDataSourceUpdate+    referenceDataSourceUpdate_referenceSchemaUpdate,+    referenceDataSourceUpdate_s3ReferenceDataSourceUpdate,+    referenceDataSourceUpdate_tableNameUpdate,+    referenceDataSourceUpdate_referenceId,++    -- ** RunConfiguration+    runConfiguration_applicationRestoreConfiguration,+    runConfiguration_flinkRunConfiguration,+    runConfiguration_sqlRunConfigurations,++    -- ** RunConfigurationDescription+    runConfigurationDescription_applicationRestoreConfigurationDescription,+    runConfigurationDescription_flinkRunConfigurationDescription,++    -- ** RunConfigurationUpdate+    runConfigurationUpdate_applicationRestoreConfiguration,+    runConfigurationUpdate_flinkRunConfiguration,++    -- ** S3ApplicationCodeLocationDescription+    s3ApplicationCodeLocationDescription_objectVersion,+    s3ApplicationCodeLocationDescription_bucketARN,+    s3ApplicationCodeLocationDescription_fileKey,++    -- ** S3Configuration+    s3Configuration_bucketARN,+    s3Configuration_fileKey,++    -- ** S3ContentBaseLocation+    s3ContentBaseLocation_basePath,+    s3ContentBaseLocation_bucketARN,++    -- ** S3ContentBaseLocationDescription+    s3ContentBaseLocationDescription_basePath,+    s3ContentBaseLocationDescription_bucketARN,++    -- ** S3ContentBaseLocationUpdate+    s3ContentBaseLocationUpdate_basePathUpdate,+    s3ContentBaseLocationUpdate_bucketARNUpdate,++    -- ** S3ContentLocation+    s3ContentLocation_objectVersion,+    s3ContentLocation_bucketARN,+    s3ContentLocation_fileKey,++    -- ** S3ContentLocationUpdate+    s3ContentLocationUpdate_bucketARNUpdate,+    s3ContentLocationUpdate_fileKeyUpdate,+    s3ContentLocationUpdate_objectVersionUpdate,++    -- ** S3ReferenceDataSource+    s3ReferenceDataSource_bucketARN,+    s3ReferenceDataSource_fileKey,++    -- ** S3ReferenceDataSourceDescription+    s3ReferenceDataSourceDescription_referenceRoleARN,+    s3ReferenceDataSourceDescription_bucketARN,+    s3ReferenceDataSourceDescription_fileKey,++    -- ** S3ReferenceDataSourceUpdate+    s3ReferenceDataSourceUpdate_bucketARNUpdate,+    s3ReferenceDataSourceUpdate_fileKeyUpdate,++    -- ** SnapshotDetails+    snapshotDetails_snapshotCreationTimestamp,+    snapshotDetails_snapshotName,+    snapshotDetails_snapshotStatus,+    snapshotDetails_applicationVersionId,++    -- ** SourceSchema+    sourceSchema_recordEncoding,+    sourceSchema_recordFormat,+    sourceSchema_recordColumns,++    -- ** SqlApplicationConfiguration+    sqlApplicationConfiguration_inputs,+    sqlApplicationConfiguration_outputs,+    sqlApplicationConfiguration_referenceDataSources,++    -- ** SqlApplicationConfigurationDescription+    sqlApplicationConfigurationDescription_inputDescriptions,+    sqlApplicationConfigurationDescription_outputDescriptions,+    sqlApplicationConfigurationDescription_referenceDataSourceDescriptions,++    -- ** SqlApplicationConfigurationUpdate+    sqlApplicationConfigurationUpdate_inputUpdates,+    sqlApplicationConfigurationUpdate_outputUpdates,+    sqlApplicationConfigurationUpdate_referenceDataSourceUpdates,++    -- ** SqlRunConfiguration+    sqlRunConfiguration_inputId,+    sqlRunConfiguration_inputStartingPositionConfiguration,++    -- ** Tag+    tag_value,+    tag_key,++    -- ** VpcConfiguration+    vpcConfiguration_subnetIds,+    vpcConfiguration_securityGroupIds,++    -- ** VpcConfigurationDescription+    vpcConfigurationDescription_vpcConfigurationId,+    vpcConfigurationDescription_vpcId,+    vpcConfigurationDescription_subnetIds,+    vpcConfigurationDescription_securityGroupIds,++    -- ** VpcConfigurationUpdate+    vpcConfigurationUpdate_securityGroupIdUpdates,+    vpcConfigurationUpdate_subnetIdUpdates,+    vpcConfigurationUpdate_vpcConfigurationId,++    -- ** ZeppelinApplicationConfiguration+    zeppelinApplicationConfiguration_catalogConfiguration,+    zeppelinApplicationConfiguration_customArtifactsConfiguration,+    zeppelinApplicationConfiguration_deployAsApplicationConfiguration,+    zeppelinApplicationConfiguration_monitoringConfiguration,++    -- ** ZeppelinApplicationConfigurationDescription+    zeppelinApplicationConfigurationDescription_catalogConfigurationDescription,+    zeppelinApplicationConfigurationDescription_customArtifactsConfigurationDescription,+    zeppelinApplicationConfigurationDescription_deployAsApplicationConfigurationDescription,+    zeppelinApplicationConfigurationDescription_monitoringConfigurationDescription,++    -- ** ZeppelinApplicationConfigurationUpdate+    zeppelinApplicationConfigurationUpdate_catalogConfigurationUpdate,+    zeppelinApplicationConfigurationUpdate_customArtifactsConfigurationUpdate,+    zeppelinApplicationConfigurationUpdate_deployAsApplicationConfigurationUpdate,+    zeppelinApplicationConfigurationUpdate_monitoringConfigurationUpdate,++    -- ** ZeppelinMonitoringConfiguration+    zeppelinMonitoringConfiguration_logLevel,++    -- ** ZeppelinMonitoringConfigurationDescription+    zeppelinMonitoringConfigurationDescription_logLevel,++    -- ** ZeppelinMonitoringConfigurationUpdate+    zeppelinMonitoringConfigurationUpdate_logLevelUpdate,+  )+where++import Amazonka.KinesisAnalyticsV2.AddApplicationCloudWatchLoggingOption+import Amazonka.KinesisAnalyticsV2.AddApplicationInput+import Amazonka.KinesisAnalyticsV2.AddApplicationInputProcessingConfiguration+import Amazonka.KinesisAnalyticsV2.AddApplicationOutput+import Amazonka.KinesisAnalyticsV2.AddApplicationReferenceDataSource+import Amazonka.KinesisAnalyticsV2.AddApplicationVpcConfiguration+import Amazonka.KinesisAnalyticsV2.CreateApplication+import Amazonka.KinesisAnalyticsV2.CreateApplicationPresignedUrl+import Amazonka.KinesisAnalyticsV2.CreateApplicationSnapshot+import Amazonka.KinesisAnalyticsV2.DeleteApplication+import Amazonka.KinesisAnalyticsV2.DeleteApplicationCloudWatchLoggingOption+import Amazonka.KinesisAnalyticsV2.DeleteApplicationInputProcessingConfiguration+import Amazonka.KinesisAnalyticsV2.DeleteApplicationOutput+import Amazonka.KinesisAnalyticsV2.DeleteApplicationReferenceDataSource+import Amazonka.KinesisAnalyticsV2.DeleteApplicationSnapshot+import Amazonka.KinesisAnalyticsV2.DeleteApplicationVpcConfiguration+import Amazonka.KinesisAnalyticsV2.DescribeApplication+import Amazonka.KinesisAnalyticsV2.DescribeApplicationSnapshot+import Amazonka.KinesisAnalyticsV2.DescribeApplicationVersion+import Amazonka.KinesisAnalyticsV2.DiscoverInputSchema+import Amazonka.KinesisAnalyticsV2.ListApplicationSnapshots+import Amazonka.KinesisAnalyticsV2.ListApplicationVersions+import Amazonka.KinesisAnalyticsV2.ListApplications+import Amazonka.KinesisAnalyticsV2.ListTagsForResource+import Amazonka.KinesisAnalyticsV2.RollbackApplication+import Amazonka.KinesisAnalyticsV2.StartApplication+import Amazonka.KinesisAnalyticsV2.StopApplication+import Amazonka.KinesisAnalyticsV2.TagResource+import Amazonka.KinesisAnalyticsV2.Types.ApplicationCodeConfiguration+import Amazonka.KinesisAnalyticsV2.Types.ApplicationCodeConfigurationDescription+import Amazonka.KinesisAnalyticsV2.Types.ApplicationCodeConfigurationUpdate+import Amazonka.KinesisAnalyticsV2.Types.ApplicationConfiguration+import Amazonka.KinesisAnalyticsV2.Types.ApplicationConfigurationDescription+import Amazonka.KinesisAnalyticsV2.Types.ApplicationConfigurationUpdate+import Amazonka.KinesisAnalyticsV2.Types.ApplicationDetail+import Amazonka.KinesisAnalyticsV2.Types.ApplicationMaintenanceConfigurationDescription+import Amazonka.KinesisAnalyticsV2.Types.ApplicationMaintenanceConfigurationUpdate+import Amazonka.KinesisAnalyticsV2.Types.ApplicationRestoreConfiguration+import Amazonka.KinesisAnalyticsV2.Types.ApplicationSnapshotConfiguration+import Amazonka.KinesisAnalyticsV2.Types.ApplicationSnapshotConfigurationDescription+import Amazonka.KinesisAnalyticsV2.Types.ApplicationSnapshotConfigurationUpdate+import Amazonka.KinesisAnalyticsV2.Types.ApplicationSummary+import Amazonka.KinesisAnalyticsV2.Types.ApplicationVersionSummary+import Amazonka.KinesisAnalyticsV2.Types.CSVMappingParameters+import Amazonka.KinesisAnalyticsV2.Types.CatalogConfiguration+import Amazonka.KinesisAnalyticsV2.Types.CatalogConfigurationDescription+import Amazonka.KinesisAnalyticsV2.Types.CatalogConfigurationUpdate+import Amazonka.KinesisAnalyticsV2.Types.CheckpointConfiguration+import Amazonka.KinesisAnalyticsV2.Types.CheckpointConfigurationDescription+import Amazonka.KinesisAnalyticsV2.Types.CheckpointConfigurationUpdate+import Amazonka.KinesisAnalyticsV2.Types.CloudWatchLoggingOption+import Amazonka.KinesisAnalyticsV2.Types.CloudWatchLoggingOptionDescription+import Amazonka.KinesisAnalyticsV2.Types.CloudWatchLoggingOptionUpdate+import Amazonka.KinesisAnalyticsV2.Types.CodeContent+import Amazonka.KinesisAnalyticsV2.Types.CodeContentDescription+import Amazonka.KinesisAnalyticsV2.Types.CodeContentUpdate+import Amazonka.KinesisAnalyticsV2.Types.CustomArtifactConfiguration+import Amazonka.KinesisAnalyticsV2.Types.CustomArtifactConfigurationDescription+import Amazonka.KinesisAnalyticsV2.Types.DeployAsApplicationConfiguration+import Amazonka.KinesisAnalyticsV2.Types.DeployAsApplicationConfigurationDescription+import Amazonka.KinesisAnalyticsV2.Types.DeployAsApplicationConfigurationUpdate+import Amazonka.KinesisAnalyticsV2.Types.DestinationSchema+import Amazonka.KinesisAnalyticsV2.Types.EnvironmentProperties+import Amazonka.KinesisAnalyticsV2.Types.EnvironmentPropertyDescriptions+import Amazonka.KinesisAnalyticsV2.Types.EnvironmentPropertyUpdates+import Amazonka.KinesisAnalyticsV2.Types.FlinkApplicationConfiguration+import Amazonka.KinesisAnalyticsV2.Types.FlinkApplicationConfigurationDescription+import Amazonka.KinesisAnalyticsV2.Types.FlinkApplicationConfigurationUpdate+import Amazonka.KinesisAnalyticsV2.Types.FlinkRunConfiguration+import Amazonka.KinesisAnalyticsV2.Types.GlueDataCatalogConfiguration+import Amazonka.KinesisAnalyticsV2.Types.GlueDataCatalogConfigurationDescription+import Amazonka.KinesisAnalyticsV2.Types.GlueDataCatalogConfigurationUpdate+import Amazonka.KinesisAnalyticsV2.Types.Input+import Amazonka.KinesisAnalyticsV2.Types.InputDescription+import Amazonka.KinesisAnalyticsV2.Types.InputLambdaProcessor+import Amazonka.KinesisAnalyticsV2.Types.InputLambdaProcessorDescription+import Amazonka.KinesisAnalyticsV2.Types.InputLambdaProcessorUpdate+import Amazonka.KinesisAnalyticsV2.Types.InputParallelism+import Amazonka.KinesisAnalyticsV2.Types.InputParallelismUpdate+import Amazonka.KinesisAnalyticsV2.Types.InputProcessingConfiguration+import Amazonka.KinesisAnalyticsV2.Types.InputProcessingConfigurationDescription+import Amazonka.KinesisAnalyticsV2.Types.InputProcessingConfigurationUpdate+import Amazonka.KinesisAnalyticsV2.Types.InputSchemaUpdate+import Amazonka.KinesisAnalyticsV2.Types.InputStartingPositionConfiguration+import Amazonka.KinesisAnalyticsV2.Types.InputUpdate+import Amazonka.KinesisAnalyticsV2.Types.JSONMappingParameters+import Amazonka.KinesisAnalyticsV2.Types.KinesisFirehoseInput+import Amazonka.KinesisAnalyticsV2.Types.KinesisFirehoseInputDescription+import Amazonka.KinesisAnalyticsV2.Types.KinesisFirehoseInputUpdate+import Amazonka.KinesisAnalyticsV2.Types.KinesisFirehoseOutput+import Amazonka.KinesisAnalyticsV2.Types.KinesisFirehoseOutputDescription+import Amazonka.KinesisAnalyticsV2.Types.KinesisFirehoseOutputUpdate+import Amazonka.KinesisAnalyticsV2.Types.KinesisStreamsInput+import Amazonka.KinesisAnalyticsV2.Types.KinesisStreamsInputDescription+import Amazonka.KinesisAnalyticsV2.Types.KinesisStreamsInputUpdate+import Amazonka.KinesisAnalyticsV2.Types.KinesisStreamsOutput+import Amazonka.KinesisAnalyticsV2.Types.KinesisStreamsOutputDescription+import Amazonka.KinesisAnalyticsV2.Types.KinesisStreamsOutputUpdate+import Amazonka.KinesisAnalyticsV2.Types.LambdaOutput+import Amazonka.KinesisAnalyticsV2.Types.LambdaOutputDescription+import Amazonka.KinesisAnalyticsV2.Types.LambdaOutputUpdate+import Amazonka.KinesisAnalyticsV2.Types.MappingParameters+import Amazonka.KinesisAnalyticsV2.Types.MavenReference+import Amazonka.KinesisAnalyticsV2.Types.MonitoringConfiguration+import Amazonka.KinesisAnalyticsV2.Types.MonitoringConfigurationDescription+import Amazonka.KinesisAnalyticsV2.Types.MonitoringConfigurationUpdate+import Amazonka.KinesisAnalyticsV2.Types.Output+import Amazonka.KinesisAnalyticsV2.Types.OutputDescription+import Amazonka.KinesisAnalyticsV2.Types.OutputUpdate+import Amazonka.KinesisAnalyticsV2.Types.ParallelismConfiguration+import Amazonka.KinesisAnalyticsV2.Types.ParallelismConfigurationDescription+import Amazonka.KinesisAnalyticsV2.Types.ParallelismConfigurationUpdate+import Amazonka.KinesisAnalyticsV2.Types.PropertyGroup+import Amazonka.KinesisAnalyticsV2.Types.RecordColumn+import Amazonka.KinesisAnalyticsV2.Types.RecordFormat+import Amazonka.KinesisAnalyticsV2.Types.ReferenceDataSource+import Amazonka.KinesisAnalyticsV2.Types.ReferenceDataSourceDescription+import Amazonka.KinesisAnalyticsV2.Types.ReferenceDataSourceUpdate+import Amazonka.KinesisAnalyticsV2.Types.RunConfiguration+import Amazonka.KinesisAnalyticsV2.Types.RunConfigurationDescription+import Amazonka.KinesisAnalyticsV2.Types.RunConfigurationUpdate+import Amazonka.KinesisAnalyticsV2.Types.S3ApplicationCodeLocationDescription+import Amazonka.KinesisAnalyticsV2.Types.S3Configuration+import Amazonka.KinesisAnalyticsV2.Types.S3ContentBaseLocation+import Amazonka.KinesisAnalyticsV2.Types.S3ContentBaseLocationDescription+import Amazonka.KinesisAnalyticsV2.Types.S3ContentBaseLocationUpdate+import Amazonka.KinesisAnalyticsV2.Types.S3ContentLocation+import Amazonka.KinesisAnalyticsV2.Types.S3ContentLocationUpdate+import Amazonka.KinesisAnalyticsV2.Types.S3ReferenceDataSource+import Amazonka.KinesisAnalyticsV2.Types.S3ReferenceDataSourceDescription+import Amazonka.KinesisAnalyticsV2.Types.S3ReferenceDataSourceUpdate+import Amazonka.KinesisAnalyticsV2.Types.SnapshotDetails+import Amazonka.KinesisAnalyticsV2.Types.SourceSchema+import Amazonka.KinesisAnalyticsV2.Types.SqlApplicationConfiguration+import Amazonka.KinesisAnalyticsV2.Types.SqlApplicationConfigurationDescription+import Amazonka.KinesisAnalyticsV2.Types.SqlApplicationConfigurationUpdate+import Amazonka.KinesisAnalyticsV2.Types.SqlRunConfiguration+import Amazonka.KinesisAnalyticsV2.Types.Tag+import Amazonka.KinesisAnalyticsV2.Types.VpcConfiguration+import Amazonka.KinesisAnalyticsV2.Types.VpcConfigurationDescription+import Amazonka.KinesisAnalyticsV2.Types.VpcConfigurationUpdate+import Amazonka.KinesisAnalyticsV2.Types.ZeppelinApplicationConfiguration+import Amazonka.KinesisAnalyticsV2.Types.ZeppelinApplicationConfigurationDescription+import Amazonka.KinesisAnalyticsV2.Types.ZeppelinApplicationConfigurationUpdate+import Amazonka.KinesisAnalyticsV2.Types.ZeppelinMonitoringConfiguration+import Amazonka.KinesisAnalyticsV2.Types.ZeppelinMonitoringConfigurationDescription+import Amazonka.KinesisAnalyticsV2.Types.ZeppelinMonitoringConfigurationUpdate+import Amazonka.KinesisAnalyticsV2.UntagResource+import Amazonka.KinesisAnalyticsV2.UpdateApplication+import Amazonka.KinesisAnalyticsV2.UpdateApplicationMaintenanceConfiguration
+ gen/Amazonka/KinesisAnalyticsV2/ListApplicationSnapshots.hs view
@@ -0,0 +1,257 @@+{-# 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.KinesisAnalyticsV2.ListApplicationSnapshots+-- 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 information about the current application snapshots.+--+-- This operation returns paginated results.+module Amazonka.KinesisAnalyticsV2.ListApplicationSnapshots+  ( -- * Creating a Request+    ListApplicationSnapshots (..),+    newListApplicationSnapshots,++    -- * Request Lenses+    listApplicationSnapshots_limit,+    listApplicationSnapshots_nextToken,+    listApplicationSnapshots_applicationName,++    -- * Destructuring the Response+    ListApplicationSnapshotsResponse (..),+    newListApplicationSnapshotsResponse,++    -- * Response Lenses+    listApplicationSnapshotsResponse_nextToken,+    listApplicationSnapshotsResponse_snapshotSummaries,+    listApplicationSnapshotsResponse_httpStatus,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListApplicationSnapshots' smart constructor.+data ListApplicationSnapshots = ListApplicationSnapshots'+  { -- | The maximum number of application snapshots to list.+    limit :: Prelude.Maybe Prelude.Natural,+    -- | Use this parameter if you receive a @NextToken@ response in a previous+    -- request that indicates that there is more output available. Set it to+    -- the value of the previous call\'s @NextToken@ response to indicate where+    -- the output should continue from.+    nextToken :: Prelude.Maybe Prelude.Text,+    -- | The name of an existing application.+    applicationName :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListApplicationSnapshots' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'listApplicationSnapshots_limit' - The maximum number of application snapshots to list.+--+-- 'nextToken', 'listApplicationSnapshots_nextToken' - Use this parameter if you receive a @NextToken@ response in a previous+-- request that indicates that there is more output available. Set it to+-- the value of the previous call\'s @NextToken@ response to indicate where+-- the output should continue from.+--+-- 'applicationName', 'listApplicationSnapshots_applicationName' - The name of an existing application.+newListApplicationSnapshots ::+  -- | 'applicationName'+  Prelude.Text ->+  ListApplicationSnapshots+newListApplicationSnapshots pApplicationName_ =+  ListApplicationSnapshots'+    { limit = Prelude.Nothing,+      nextToken = Prelude.Nothing,+      applicationName = pApplicationName_+    }++-- | The maximum number of application snapshots to list.+listApplicationSnapshots_limit :: Lens.Lens' ListApplicationSnapshots (Prelude.Maybe Prelude.Natural)+listApplicationSnapshots_limit = Lens.lens (\ListApplicationSnapshots' {limit} -> limit) (\s@ListApplicationSnapshots' {} a -> s {limit = a} :: ListApplicationSnapshots)++-- | Use this parameter if you receive a @NextToken@ response in a previous+-- request that indicates that there is more output available. Set it to+-- the value of the previous call\'s @NextToken@ response to indicate where+-- the output should continue from.+listApplicationSnapshots_nextToken :: Lens.Lens' ListApplicationSnapshots (Prelude.Maybe Prelude.Text)+listApplicationSnapshots_nextToken = Lens.lens (\ListApplicationSnapshots' {nextToken} -> nextToken) (\s@ListApplicationSnapshots' {} a -> s {nextToken = a} :: ListApplicationSnapshots)++-- | The name of an existing application.+listApplicationSnapshots_applicationName :: Lens.Lens' ListApplicationSnapshots Prelude.Text+listApplicationSnapshots_applicationName = Lens.lens (\ListApplicationSnapshots' {applicationName} -> applicationName) (\s@ListApplicationSnapshots' {} a -> s {applicationName = a} :: ListApplicationSnapshots)++instance Core.AWSPager ListApplicationSnapshots where+  page rq rs+    | Core.stop+        ( rs+            Lens.^? listApplicationSnapshotsResponse_nextToken+            Prelude.. Lens._Just+        ) =+        Prelude.Nothing+    | Core.stop+        ( rs+            Lens.^? listApplicationSnapshotsResponse_snapshotSummaries+            Prelude.. Lens._Just+        ) =+        Prelude.Nothing+    | Prelude.otherwise =+        Prelude.Just+          Prelude.$ rq+          Prelude.& listApplicationSnapshots_nextToken+          Lens..~ rs+          Lens.^? listApplicationSnapshotsResponse_nextToken+          Prelude.. Lens._Just++instance Core.AWSRequest ListApplicationSnapshots where+  type+    AWSResponse ListApplicationSnapshots =+      ListApplicationSnapshotsResponse+  request overrides =+    Request.postJSON (overrides defaultService)+  response =+    Response.receiveJSON+      ( \s h x ->+          ListApplicationSnapshotsResponse'+            Prelude.<$> (x Data..?> "NextToken")+            Prelude.<*> ( x+                            Data..?> "SnapshotSummaries"+                            Core..!@ Prelude.mempty+                        )+            Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+      )++instance Prelude.Hashable ListApplicationSnapshots where+  hashWithSalt _salt ListApplicationSnapshots' {..} =+    _salt+      `Prelude.hashWithSalt` limit+      `Prelude.hashWithSalt` nextToken+      `Prelude.hashWithSalt` applicationName++instance Prelude.NFData ListApplicationSnapshots where+  rnf ListApplicationSnapshots' {..} =+    Prelude.rnf limit+      `Prelude.seq` Prelude.rnf nextToken+      `Prelude.seq` Prelude.rnf applicationName++instance Data.ToHeaders ListApplicationSnapshots where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "X-Amz-Target"+              Data.=# ( "KinesisAnalytics_20180523.ListApplicationSnapshots" ::+                          Prelude.ByteString+                      ),+            "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance Data.ToJSON ListApplicationSnapshots where+  toJSON ListApplicationSnapshots' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("Limit" Data..=) Prelude.<$> limit,+            ("NextToken" Data..=) Prelude.<$> nextToken,+            Prelude.Just+              ("ApplicationName" Data..= applicationName)+          ]+      )++instance Data.ToPath ListApplicationSnapshots where+  toPath = Prelude.const "/"++instance Data.ToQuery ListApplicationSnapshots where+  toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newListApplicationSnapshotsResponse' smart constructor.+data ListApplicationSnapshotsResponse = ListApplicationSnapshotsResponse'+  { -- | The token for the next set of results, or @null@ if there are no+    -- additional results.+    nextToken :: Prelude.Maybe Prelude.Text,+    -- | A collection of objects containing information about the application+    -- snapshots.+    snapshotSummaries :: Prelude.Maybe [SnapshotDetails],+    -- | The response's http status code.+    httpStatus :: Prelude.Int+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListApplicationSnapshotsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'listApplicationSnapshotsResponse_nextToken' - The token for the next set of results, or @null@ if there are no+-- additional results.+--+-- 'snapshotSummaries', 'listApplicationSnapshotsResponse_snapshotSummaries' - A collection of objects containing information about the application+-- snapshots.+--+-- 'httpStatus', 'listApplicationSnapshotsResponse_httpStatus' - The response's http status code.+newListApplicationSnapshotsResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  ListApplicationSnapshotsResponse+newListApplicationSnapshotsResponse pHttpStatus_ =+  ListApplicationSnapshotsResponse'+    { nextToken =+        Prelude.Nothing,+      snapshotSummaries = Prelude.Nothing,+      httpStatus = pHttpStatus_+    }++-- | The token for the next set of results, or @null@ if there are no+-- additional results.+listApplicationSnapshotsResponse_nextToken :: Lens.Lens' ListApplicationSnapshotsResponse (Prelude.Maybe Prelude.Text)+listApplicationSnapshotsResponse_nextToken = Lens.lens (\ListApplicationSnapshotsResponse' {nextToken} -> nextToken) (\s@ListApplicationSnapshotsResponse' {} a -> s {nextToken = a} :: ListApplicationSnapshotsResponse)++-- | A collection of objects containing information about the application+-- snapshots.+listApplicationSnapshotsResponse_snapshotSummaries :: Lens.Lens' ListApplicationSnapshotsResponse (Prelude.Maybe [SnapshotDetails])+listApplicationSnapshotsResponse_snapshotSummaries = Lens.lens (\ListApplicationSnapshotsResponse' {snapshotSummaries} -> snapshotSummaries) (\s@ListApplicationSnapshotsResponse' {} a -> s {snapshotSummaries = a} :: ListApplicationSnapshotsResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+listApplicationSnapshotsResponse_httpStatus :: Lens.Lens' ListApplicationSnapshotsResponse Prelude.Int+listApplicationSnapshotsResponse_httpStatus = Lens.lens (\ListApplicationSnapshotsResponse' {httpStatus} -> httpStatus) (\s@ListApplicationSnapshotsResponse' {} a -> s {httpStatus = a} :: ListApplicationSnapshotsResponse)++instance+  Prelude.NFData+    ListApplicationSnapshotsResponse+  where+  rnf ListApplicationSnapshotsResponse' {..} =+    Prelude.rnf nextToken+      `Prelude.seq` Prelude.rnf snapshotSummaries+      `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/KinesisAnalyticsV2/ListApplicationVersions.hs view
@@ -0,0 +1,262 @@+{-# 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.KinesisAnalyticsV2.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)+--+-- Lists all the versions for the specified application, including versions+-- that were rolled back. The response also includes a summary of the+-- configuration associated with each version.+--+-- To get the complete description of a specific application version,+-- invoke the DescribeApplicationVersion operation.+--+-- This operation is supported only for Amazon Kinesis Data Analytics for+-- Apache Flink.+module Amazonka.KinesisAnalyticsV2.ListApplicationVersions+  ( -- * Creating a Request+    ListApplicationVersions (..),+    newListApplicationVersions,++    -- * Request Lenses+    listApplicationVersions_limit,+    listApplicationVersions_nextToken,+    listApplicationVersions_applicationName,++    -- * Destructuring the Response+    ListApplicationVersionsResponse (..),+    newListApplicationVersionsResponse,++    -- * Response Lenses+    listApplicationVersionsResponse_applicationVersionSummaries,+    listApplicationVersionsResponse_nextToken,+    listApplicationVersionsResponse_httpStatus,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.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 versions to list in this invocation of the+    -- operation.+    limit :: Prelude.Maybe Prelude.Natural,+    -- | If a previous invocation of this operation returned a pagination token,+    -- pass it into this value to retrieve the next set of results. For more+    -- information about pagination, see+    -- <https://docs.aws.amazon.com/cli/latest/userguide/pagination.html Using the Amazon Command Line Interface\'s Pagination Options>.+    nextToken :: Prelude.Maybe Prelude.Text,+    -- | The name of the application for which you want to list all versions.+    applicationName :: 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:+--+-- 'limit', 'listApplicationVersions_limit' - The maximum number of versions to list in this invocation of the+-- operation.+--+-- 'nextToken', 'listApplicationVersions_nextToken' - If a previous invocation of this operation returned a pagination token,+-- pass it into this value to retrieve the next set of results. For more+-- information about pagination, see+-- <https://docs.aws.amazon.com/cli/latest/userguide/pagination.html Using the Amazon Command Line Interface\'s Pagination Options>.+--+-- 'applicationName', 'listApplicationVersions_applicationName' - The name of the application for which you want to list all versions.+newListApplicationVersions ::+  -- | 'applicationName'+  Prelude.Text ->+  ListApplicationVersions+newListApplicationVersions pApplicationName_ =+  ListApplicationVersions'+    { limit = Prelude.Nothing,+      nextToken = Prelude.Nothing,+      applicationName = pApplicationName_+    }++-- | The maximum number of versions to list in this invocation of the+-- operation.+listApplicationVersions_limit :: Lens.Lens' ListApplicationVersions (Prelude.Maybe Prelude.Natural)+listApplicationVersions_limit = Lens.lens (\ListApplicationVersions' {limit} -> limit) (\s@ListApplicationVersions' {} a -> s {limit = a} :: ListApplicationVersions)++-- | If a previous invocation of this operation returned a pagination token,+-- pass it into this value to retrieve the next set of results. For more+-- information about pagination, see+-- <https://docs.aws.amazon.com/cli/latest/userguide/pagination.html Using the Amazon Command Line Interface\'s Pagination Options>.+listApplicationVersions_nextToken :: Lens.Lens' ListApplicationVersions (Prelude.Maybe Prelude.Text)+listApplicationVersions_nextToken = Lens.lens (\ListApplicationVersions' {nextToken} -> nextToken) (\s@ListApplicationVersions' {} a -> s {nextToken = a} :: ListApplicationVersions)++-- | The name of the application for which you want to list all versions.+listApplicationVersions_applicationName :: Lens.Lens' ListApplicationVersions Prelude.Text+listApplicationVersions_applicationName = Lens.lens (\ListApplicationVersions' {applicationName} -> applicationName) (\s@ListApplicationVersions' {} a -> s {applicationName = a} :: ListApplicationVersions)++instance Core.AWSRequest ListApplicationVersions where+  type+    AWSResponse ListApplicationVersions =+      ListApplicationVersionsResponse+  request overrides =+    Request.postJSON (overrides defaultService)+  response =+    Response.receiveJSON+      ( \s h x ->+          ListApplicationVersionsResponse'+            Prelude.<$> ( x+                            Data..?> "ApplicationVersionSummaries"+                            Core..!@ Prelude.mempty+                        )+            Prelude.<*> (x Data..?> "NextToken")+            Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+      )++instance Prelude.Hashable ListApplicationVersions where+  hashWithSalt _salt ListApplicationVersions' {..} =+    _salt+      `Prelude.hashWithSalt` limit+      `Prelude.hashWithSalt` nextToken+      `Prelude.hashWithSalt` applicationName++instance Prelude.NFData ListApplicationVersions where+  rnf ListApplicationVersions' {..} =+    Prelude.rnf limit+      `Prelude.seq` Prelude.rnf nextToken+      `Prelude.seq` Prelude.rnf applicationName++instance Data.ToHeaders ListApplicationVersions where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "X-Amz-Target"+              Data.=# ( "KinesisAnalytics_20180523.ListApplicationVersions" ::+                          Prelude.ByteString+                      ),+            "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance Data.ToJSON ListApplicationVersions where+  toJSON ListApplicationVersions' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("Limit" Data..=) Prelude.<$> limit,+            ("NextToken" Data..=) Prelude.<$> nextToken,+            Prelude.Just+              ("ApplicationName" Data..= applicationName)+          ]+      )++instance Data.ToPath ListApplicationVersions where+  toPath = Prelude.const "/"++instance Data.ToQuery ListApplicationVersions where+  toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newListApplicationVersionsResponse' smart constructor.+data ListApplicationVersionsResponse = ListApplicationVersionsResponse'+  { -- | A list of the application versions and the associated configuration+    -- summaries. The list includes application versions that were rolled back.+    --+    -- To get the complete description of a specific application version,+    -- invoke the DescribeApplicationVersion operation.+    applicationVersionSummaries :: Prelude.Maybe [ApplicationVersionSummary],+    -- | The pagination token for the next set of results, or @null@ if there are+    -- no additional results. To retrieve the next set of items, pass this+    -- token into a subsequent invocation of this operation. For more+    -- information about pagination, see+    -- <https://docs.aws.amazon.com/cli/latest/userguide/pagination.html Using the Amazon Command Line Interface\'s Pagination Options>.+    nextToken :: Prelude.Maybe Prelude.Text,+    -- | The response's http status code.+    httpStatus :: Prelude.Int+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of '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:+--+-- 'applicationVersionSummaries', 'listApplicationVersionsResponse_applicationVersionSummaries' - A list of the application versions and the associated configuration+-- summaries. The list includes application versions that were rolled back.+--+-- To get the complete description of a specific application version,+-- invoke the DescribeApplicationVersion operation.+--+-- 'nextToken', 'listApplicationVersionsResponse_nextToken' - The pagination token for the next set of results, or @null@ if there are+-- no additional results. To retrieve the next set of items, pass this+-- token into a subsequent invocation of this operation. For more+-- information about pagination, see+-- <https://docs.aws.amazon.com/cli/latest/userguide/pagination.html Using the Amazon Command Line Interface\'s Pagination Options>.+--+-- 'httpStatus', 'listApplicationVersionsResponse_httpStatus' - The response's http status code.+newListApplicationVersionsResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  ListApplicationVersionsResponse+newListApplicationVersionsResponse pHttpStatus_ =+  ListApplicationVersionsResponse'+    { applicationVersionSummaries =+        Prelude.Nothing,+      nextToken = Prelude.Nothing,+      httpStatus = pHttpStatus_+    }++-- | A list of the application versions and the associated configuration+-- summaries. The list includes application versions that were rolled back.+--+-- To get the complete description of a specific application version,+-- invoke the DescribeApplicationVersion operation.+listApplicationVersionsResponse_applicationVersionSummaries :: Lens.Lens' ListApplicationVersionsResponse (Prelude.Maybe [ApplicationVersionSummary])+listApplicationVersionsResponse_applicationVersionSummaries = Lens.lens (\ListApplicationVersionsResponse' {applicationVersionSummaries} -> applicationVersionSummaries) (\s@ListApplicationVersionsResponse' {} a -> s {applicationVersionSummaries = a} :: ListApplicationVersionsResponse) Prelude.. Lens.mapping Lens.coerced++-- | The pagination token for the next set of results, or @null@ if there are+-- no additional results. To retrieve the next set of items, pass this+-- token into a subsequent invocation of this operation. For more+-- information about pagination, see+-- <https://docs.aws.amazon.com/cli/latest/userguide/pagination.html Using the Amazon Command Line Interface\'s Pagination Options>.+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)++instance+  Prelude.NFData+    ListApplicationVersionsResponse+  where+  rnf ListApplicationVersionsResponse' {..} =+    Prelude.rnf applicationVersionSummaries+      `Prelude.seq` Prelude.rnf nextToken+      `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/KinesisAnalyticsV2/ListApplications.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.KinesisAnalyticsV2.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)+--+-- Returns a list of Kinesis Data Analytics applications in your account.+-- For each application, the response includes the application name, Amazon+-- Resource Name (ARN), and status.+--+-- If you want detailed information about a specific application, use+-- DescribeApplication.+--+-- This operation returns paginated results.+module Amazonka.KinesisAnalyticsV2.ListApplications+  ( -- * Creating a Request+    ListApplications (..),+    newListApplications,++    -- * Request Lenses+    listApplications_limit,+    listApplications_nextToken,++    -- * Destructuring the Response+    ListApplicationsResponse (..),+    newListApplicationsResponse,++    -- * Response Lenses+    listApplicationsResponse_nextToken,+    listApplicationsResponse_httpStatus,+    listApplicationsResponse_applicationSummaries,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.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 maximum number of applications to list.+    limit :: Prelude.Maybe Prelude.Natural,+    -- | If a previous command returned a pagination token, pass it into this+    -- value to retrieve the next set of results. For more information about+    -- pagination, see+    -- <https://docs.aws.amazon.com/cli/latest/userguide/pagination.html Using the Amazon Command Line Interface\'s Pagination Options>.+    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:+--+-- 'limit', 'listApplications_limit' - The maximum number of applications to list.+--+-- 'nextToken', 'listApplications_nextToken' - If a previous command returned a pagination token, pass it into this+-- value to retrieve the next set of results. For more information about+-- pagination, see+-- <https://docs.aws.amazon.com/cli/latest/userguide/pagination.html Using the Amazon Command Line Interface\'s Pagination Options>.+newListApplications ::+  ListApplications+newListApplications =+  ListApplications'+    { limit = Prelude.Nothing,+      nextToken = Prelude.Nothing+    }++-- | The maximum number of applications to list.+listApplications_limit :: Lens.Lens' ListApplications (Prelude.Maybe Prelude.Natural)+listApplications_limit = Lens.lens (\ListApplications' {limit} -> limit) (\s@ListApplications' {} a -> s {limit = a} :: ListApplications)++-- | If a previous command returned a pagination token, pass it into this+-- value to retrieve the next set of results. For more information about+-- pagination, see+-- <https://docs.aws.amazon.com/cli/latest/userguide/pagination.html Using the Amazon Command Line Interface\'s Pagination Options>.+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_applicationSummaries+        ) =+        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.postJSON (overrides defaultService)+  response =+    Response.receiveJSON+      ( \s h x ->+          ListApplicationsResponse'+            Prelude.<$> (x Data..?> "NextToken")+            Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+            Prelude.<*> ( x+                            Data..?> "ApplicationSummaries"+                            Core..!@ Prelude.mempty+                        )+      )++instance Prelude.Hashable ListApplications where+  hashWithSalt _salt ListApplications' {..} =+    _salt+      `Prelude.hashWithSalt` limit+      `Prelude.hashWithSalt` nextToken++instance Prelude.NFData ListApplications where+  rnf ListApplications' {..} =+    Prelude.rnf limit+      `Prelude.seq` Prelude.rnf nextToken++instance Data.ToHeaders ListApplications where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "X-Amz-Target"+              Data.=# ( "KinesisAnalytics_20180523.ListApplications" ::+                          Prelude.ByteString+                      ),+            "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance Data.ToJSON ListApplications where+  toJSON ListApplications' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("Limit" Data..=) Prelude.<$> limit,+            ("NextToken" Data..=) Prelude.<$> nextToken+          ]+      )++instance Data.ToPath ListApplications where+  toPath = Prelude.const "/"++instance Data.ToQuery ListApplications where+  toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newListApplicationsResponse' smart constructor.+data ListApplicationsResponse = ListApplicationsResponse'+  { -- | The pagination token for the next set of results, or @null@ if there are+    -- no additional results. Pass this token into a subsequent command to+    -- retrieve the next set of items For more information about pagination,+    -- see+    -- <https://docs.aws.amazon.com/cli/latest/userguide/pagination.html Using the Amazon Command Line Interface\'s Pagination Options>.+    nextToken :: Prelude.Maybe Prelude.Text,+    -- | The response's http status code.+    httpStatus :: Prelude.Int,+    -- | A list of @ApplicationSummary@ objects.+    applicationSummaries :: [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' - The pagination token for the next set of results, or @null@ if there are+-- no additional results. Pass this token into a subsequent command to+-- retrieve the next set of items For more information about pagination,+-- see+-- <https://docs.aws.amazon.com/cli/latest/userguide/pagination.html Using the Amazon Command Line Interface\'s Pagination Options>.+--+-- 'httpStatus', 'listApplicationsResponse_httpStatus' - The response's http status code.+--+-- 'applicationSummaries', 'listApplicationsResponse_applicationSummaries' - A list of @ApplicationSummary@ objects.+newListApplicationsResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  ListApplicationsResponse+newListApplicationsResponse pHttpStatus_ =+  ListApplicationsResponse'+    { nextToken =+        Prelude.Nothing,+      httpStatus = pHttpStatus_,+      applicationSummaries = Prelude.mempty+    }++-- | The pagination token for the next set of results, or @null@ if there are+-- no additional results. Pass this token into a subsequent command to+-- retrieve the next set of items For more information about pagination,+-- see+-- <https://docs.aws.amazon.com/cli/latest/userguide/pagination.html Using the Amazon Command Line Interface\'s Pagination Options>.+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)++-- | A list of @ApplicationSummary@ objects.+listApplicationsResponse_applicationSummaries :: Lens.Lens' ListApplicationsResponse [ApplicationSummary]+listApplicationsResponse_applicationSummaries = Lens.lens (\ListApplicationsResponse' {applicationSummaries} -> applicationSummaries) (\s@ListApplicationsResponse' {} a -> s {applicationSummaries = a} :: ListApplicationsResponse) Prelude.. Lens.coerced++instance Prelude.NFData ListApplicationsResponse where+  rnf ListApplicationsResponse' {..} =+    Prelude.rnf nextToken+      `Prelude.seq` Prelude.rnf httpStatus+      `Prelude.seq` Prelude.rnf applicationSummaries
+ gen/Amazonka/KinesisAnalyticsV2/ListTagsForResource.hs view
@@ -0,0 +1,171 @@+{-# 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.KinesisAnalyticsV2.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)+--+-- Retrieves the list of key-value tags assigned to the application. For+-- more information, see+-- <https://docs.aws.amazon.com/kinesisanalytics/latest/java/how-tagging.html Using Tagging>.+module Amazonka.KinesisAnalyticsV2.ListTagsForResource+  ( -- * Creating a Request+    ListTagsForResource (..),+    newListTagsForResource,++    -- * Request Lenses+    listTagsForResource_resourceARN,++    -- * Destructuring the Response+    ListTagsForResourceResponse (..),+    newListTagsForResourceResponse,++    -- * Response Lenses+    listTagsForResourceResponse_tags,+    listTagsForResourceResponse_httpStatus,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.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 ARN of the application for which to retrieve tags.+    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 ARN of the application for which to retrieve tags.+newListTagsForResource ::+  -- | 'resourceARN'+  Prelude.Text ->+  ListTagsForResource+newListTagsForResource pResourceARN_ =+  ListTagsForResource' {resourceARN = pResourceARN_}++-- | The ARN of the application for which to retrieve tags.+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.postJSON (overrides defaultService)+  response =+    Response.receiveJSON+      ( \s h x ->+          ListTagsForResourceResponse'+            Prelude.<$> (x Data..?> "Tags")+            Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+      )++instance Prelude.Hashable ListTagsForResource where+  hashWithSalt _salt ListTagsForResource' {..} =+    _salt `Prelude.hashWithSalt` resourceARN++instance Prelude.NFData ListTagsForResource where+  rnf ListTagsForResource' {..} =+    Prelude.rnf resourceARN++instance Data.ToHeaders ListTagsForResource where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "X-Amz-Target"+              Data.=# ( "KinesisAnalytics_20180523.ListTagsForResource" ::+                          Prelude.ByteString+                      ),+            "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance Data.ToJSON ListTagsForResource where+  toJSON ListTagsForResource' {..} =+    Data.object+      ( Prelude.catMaybes+          [Prelude.Just ("ResourceARN" Data..= resourceARN)]+      )++instance Data.ToPath ListTagsForResource where+  toPath = Prelude.const "/"++instance Data.ToQuery ListTagsForResource where+  toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newListTagsForResourceResponse' smart constructor.+data ListTagsForResourceResponse = ListTagsForResourceResponse'+  { -- | The key-value tags assigned to the application.+    tags :: Prelude.Maybe (Prelude.NonEmpty Tag),+    -- | The response's http status code.+    httpStatus :: Prelude.Int+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListTagsForResourceResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'tags', 'listTagsForResourceResponse_tags' - The key-value tags assigned to the application.+--+-- 'httpStatus', 'listTagsForResourceResponse_httpStatus' - The response's http status code.+newListTagsForResourceResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  ListTagsForResourceResponse+newListTagsForResourceResponse pHttpStatus_ =+  ListTagsForResourceResponse'+    { tags =+        Prelude.Nothing,+      httpStatus = pHttpStatus_+    }++-- | The key-value tags assigned to the application.+listTagsForResourceResponse_tags :: Lens.Lens' ListTagsForResourceResponse (Prelude.Maybe (Prelude.NonEmpty Tag))+listTagsForResourceResponse_tags = Lens.lens (\ListTagsForResourceResponse' {tags} -> tags) (\s@ListTagsForResourceResponse' {} a -> s {tags = a} :: ListTagsForResourceResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+listTagsForResourceResponse_httpStatus :: Lens.Lens' ListTagsForResourceResponse Prelude.Int+listTagsForResourceResponse_httpStatus = Lens.lens (\ListTagsForResourceResponse' {httpStatus} -> httpStatus) (\s@ListTagsForResourceResponse' {} a -> s {httpStatus = a} :: ListTagsForResourceResponse)++instance Prelude.NFData ListTagsForResourceResponse where+  rnf ListTagsForResourceResponse' {..} =+    Prelude.rnf tags+      `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/KinesisAnalyticsV2/RollbackApplication.hs view
@@ -0,0 +1,213 @@+{-# 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.KinesisAnalyticsV2.RollbackApplication+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Reverts the application to the previous running version. You can roll+-- back an application if you suspect it is stuck in a transient status.+--+-- You can roll back an application only if it is in the @UPDATING@ or+-- @AUTOSCALING@ status.+--+-- When you rollback an application, it loads state data from the last+-- successful snapshot. If the application has no snapshots, Kinesis Data+-- Analytics rejects the rollback request.+--+-- This action is not supported for Kinesis Data Analytics for SQL+-- applications.+module Amazonka.KinesisAnalyticsV2.RollbackApplication+  ( -- * Creating a Request+    RollbackApplication (..),+    newRollbackApplication,++    -- * Request Lenses+    rollbackApplication_applicationName,+    rollbackApplication_currentApplicationVersionId,++    -- * Destructuring the Response+    RollbackApplicationResponse (..),+    newRollbackApplicationResponse,++    -- * Response Lenses+    rollbackApplicationResponse_httpStatus,+    rollbackApplicationResponse_applicationDetail,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newRollbackApplication' smart constructor.+data RollbackApplication = RollbackApplication'+  { -- | The name of the application.+    applicationName :: Prelude.Text,+    -- | The current application version ID. You can retrieve the application+    -- version ID using DescribeApplication.+    currentApplicationVersionId :: Prelude.Natural+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'RollbackApplication' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applicationName', 'rollbackApplication_applicationName' - The name of the application.+--+-- 'currentApplicationVersionId', 'rollbackApplication_currentApplicationVersionId' - The current application version ID. You can retrieve the application+-- version ID using DescribeApplication.+newRollbackApplication ::+  -- | 'applicationName'+  Prelude.Text ->+  -- | 'currentApplicationVersionId'+  Prelude.Natural ->+  RollbackApplication+newRollbackApplication+  pApplicationName_+  pCurrentApplicationVersionId_ =+    RollbackApplication'+      { applicationName =+          pApplicationName_,+        currentApplicationVersionId =+          pCurrentApplicationVersionId_+      }++-- | The name of the application.+rollbackApplication_applicationName :: Lens.Lens' RollbackApplication Prelude.Text+rollbackApplication_applicationName = Lens.lens (\RollbackApplication' {applicationName} -> applicationName) (\s@RollbackApplication' {} a -> s {applicationName = a} :: RollbackApplication)++-- | The current application version ID. You can retrieve the application+-- version ID using DescribeApplication.+rollbackApplication_currentApplicationVersionId :: Lens.Lens' RollbackApplication Prelude.Natural+rollbackApplication_currentApplicationVersionId = Lens.lens (\RollbackApplication' {currentApplicationVersionId} -> currentApplicationVersionId) (\s@RollbackApplication' {} a -> s {currentApplicationVersionId = a} :: RollbackApplication)++instance Core.AWSRequest RollbackApplication where+  type+    AWSResponse RollbackApplication =+      RollbackApplicationResponse+  request overrides =+    Request.postJSON (overrides defaultService)+  response =+    Response.receiveJSON+      ( \s h x ->+          RollbackApplicationResponse'+            Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+            Prelude.<*> (x Data..:> "ApplicationDetail")+      )++instance Prelude.Hashable RollbackApplication where+  hashWithSalt _salt RollbackApplication' {..} =+    _salt+      `Prelude.hashWithSalt` applicationName+      `Prelude.hashWithSalt` currentApplicationVersionId++instance Prelude.NFData RollbackApplication where+  rnf RollbackApplication' {..} =+    Prelude.rnf applicationName+      `Prelude.seq` Prelude.rnf currentApplicationVersionId++instance Data.ToHeaders RollbackApplication where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "X-Amz-Target"+              Data.=# ( "KinesisAnalytics_20180523.RollbackApplication" ::+                          Prelude.ByteString+                      ),+            "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance Data.ToJSON RollbackApplication where+  toJSON RollbackApplication' {..} =+    Data.object+      ( Prelude.catMaybes+          [ Prelude.Just+              ("ApplicationName" Data..= applicationName),+            Prelude.Just+              ( "CurrentApplicationVersionId"+                  Data..= currentApplicationVersionId+              )+          ]+      )++instance Data.ToPath RollbackApplication where+  toPath = Prelude.const "/"++instance Data.ToQuery RollbackApplication where+  toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newRollbackApplicationResponse' smart constructor.+data RollbackApplicationResponse = RollbackApplicationResponse'+  { -- | The response's http status code.+    httpStatus :: Prelude.Int,+    applicationDetail :: ApplicationDetail+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'RollbackApplicationResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'rollbackApplicationResponse_httpStatus' - The response's http status code.+--+-- 'applicationDetail', 'rollbackApplicationResponse_applicationDetail' - Undocumented member.+newRollbackApplicationResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  -- | 'applicationDetail'+  ApplicationDetail ->+  RollbackApplicationResponse+newRollbackApplicationResponse+  pHttpStatus_+  pApplicationDetail_ =+    RollbackApplicationResponse'+      { httpStatus =+          pHttpStatus_,+        applicationDetail = pApplicationDetail_+      }++-- | The response's http status code.+rollbackApplicationResponse_httpStatus :: Lens.Lens' RollbackApplicationResponse Prelude.Int+rollbackApplicationResponse_httpStatus = Lens.lens (\RollbackApplicationResponse' {httpStatus} -> httpStatus) (\s@RollbackApplicationResponse' {} a -> s {httpStatus = a} :: RollbackApplicationResponse)++-- | Undocumented member.+rollbackApplicationResponse_applicationDetail :: Lens.Lens' RollbackApplicationResponse ApplicationDetail+rollbackApplicationResponse_applicationDetail = Lens.lens (\RollbackApplicationResponse' {applicationDetail} -> applicationDetail) (\s@RollbackApplicationResponse' {} a -> s {applicationDetail = a} :: RollbackApplicationResponse)++instance Prelude.NFData RollbackApplicationResponse where+  rnf RollbackApplicationResponse' {..} =+    Prelude.rnf httpStatus+      `Prelude.seq` Prelude.rnf applicationDetail
+ gen/Amazonka/KinesisAnalyticsV2/StartApplication.hs view
@@ -0,0 +1,182 @@+{-# 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.KinesisAnalyticsV2.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 the specified Kinesis Data Analytics application. After creating+-- an application, you must exclusively call this operation to start your+-- application.+module Amazonka.KinesisAnalyticsV2.StartApplication+  ( -- * Creating a Request+    StartApplication (..),+    newStartApplication,++    -- * Request Lenses+    startApplication_runConfiguration,+    startApplication_applicationName,++    -- * 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.KinesisAnalyticsV2.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'+  { -- | Identifies the run configuration (start parameters) of a Kinesis Data+    -- Analytics application.+    runConfiguration :: Prelude.Maybe RunConfiguration,+    -- | The name of the application.+    applicationName :: 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:+--+-- 'runConfiguration', 'startApplication_runConfiguration' - Identifies the run configuration (start parameters) of a Kinesis Data+-- Analytics application.+--+-- 'applicationName', 'startApplication_applicationName' - The name of the application.+newStartApplication ::+  -- | 'applicationName'+  Prelude.Text ->+  StartApplication+newStartApplication pApplicationName_ =+  StartApplication'+    { runConfiguration =+        Prelude.Nothing,+      applicationName = pApplicationName_+    }++-- | Identifies the run configuration (start parameters) of a Kinesis Data+-- Analytics application.+startApplication_runConfiguration :: Lens.Lens' StartApplication (Prelude.Maybe RunConfiguration)+startApplication_runConfiguration = Lens.lens (\StartApplication' {runConfiguration} -> runConfiguration) (\s@StartApplication' {} a -> s {runConfiguration = a} :: StartApplication)++-- | The name of the application.+startApplication_applicationName :: Lens.Lens' StartApplication Prelude.Text+startApplication_applicationName = Lens.lens (\StartApplication' {applicationName} -> applicationName) (\s@StartApplication' {} a -> s {applicationName = 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` runConfiguration+      `Prelude.hashWithSalt` applicationName++instance Prelude.NFData StartApplication where+  rnf StartApplication' {..} =+    Prelude.rnf runConfiguration+      `Prelude.seq` Prelude.rnf applicationName++instance Data.ToHeaders StartApplication where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "X-Amz-Target"+              Data.=# ( "KinesisAnalytics_20180523.StartApplication" ::+                          Prelude.ByteString+                      ),+            "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance Data.ToJSON StartApplication where+  toJSON StartApplication' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("RunConfiguration" Data..=)+              Prelude.<$> runConfiguration,+            Prelude.Just+              ("ApplicationName" Data..= applicationName)+          ]+      )++instance Data.ToPath StartApplication where+  toPath = Prelude.const "/"++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/KinesisAnalyticsV2/StopApplication.hs view
@@ -0,0 +1,222 @@+{-# 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.KinesisAnalyticsV2.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 the application from processing data. You can stop an application+-- only if it is in the running status, unless you set the @Force@+-- parameter to @true@.+--+-- You can use the DescribeApplication operation to find the application+-- status.+--+-- Kinesis Data Analytics takes a snapshot when the application is stopped,+-- unless @Force@ is set to @true@.+module Amazonka.KinesisAnalyticsV2.StopApplication+  ( -- * Creating a Request+    StopApplication (..),+    newStopApplication,++    -- * Request Lenses+    stopApplication_force,+    stopApplication_applicationName,++    -- * 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.KinesisAnalyticsV2.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'+  { -- | Set to @true@ to force the application to stop. If you set @Force@ to+    -- @true@, Kinesis Data Analytics stops the application without taking a+    -- snapshot.+    --+    -- Force-stopping your application may lead to data loss or duplication. To+    -- prevent data loss or duplicate processing of data during application+    -- restarts, we recommend you to take frequent snapshots of your+    -- application.+    --+    -- You can only force stop a Flink-based Kinesis Data Analytics+    -- application. You can\'t force stop a SQL-based Kinesis Data Analytics+    -- application.+    --+    -- The application must be in the @STARTING@, @UPDATING@, @STOPPING@,+    -- @AUTOSCALING@, or @RUNNING@ status.+    force :: Prelude.Maybe Prelude.Bool,+    -- | The name of the running application to stop.+    applicationName :: 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:+--+-- 'force', 'stopApplication_force' - Set to @true@ to force the application to stop. If you set @Force@ to+-- @true@, Kinesis Data Analytics stops the application without taking a+-- snapshot.+--+-- Force-stopping your application may lead to data loss or duplication. To+-- prevent data loss or duplicate processing of data during application+-- restarts, we recommend you to take frequent snapshots of your+-- application.+--+-- You can only force stop a Flink-based Kinesis Data Analytics+-- application. You can\'t force stop a SQL-based Kinesis Data Analytics+-- application.+--+-- The application must be in the @STARTING@, @UPDATING@, @STOPPING@,+-- @AUTOSCALING@, or @RUNNING@ status.+--+-- 'applicationName', 'stopApplication_applicationName' - The name of the running application to stop.+newStopApplication ::+  -- | 'applicationName'+  Prelude.Text ->+  StopApplication+newStopApplication pApplicationName_ =+  StopApplication'+    { force = Prelude.Nothing,+      applicationName = pApplicationName_+    }++-- | Set to @true@ to force the application to stop. If you set @Force@ to+-- @true@, Kinesis Data Analytics stops the application without taking a+-- snapshot.+--+-- Force-stopping your application may lead to data loss or duplication. To+-- prevent data loss or duplicate processing of data during application+-- restarts, we recommend you to take frequent snapshots of your+-- application.+--+-- You can only force stop a Flink-based Kinesis Data Analytics+-- application. You can\'t force stop a SQL-based Kinesis Data Analytics+-- application.+--+-- The application must be in the @STARTING@, @UPDATING@, @STOPPING@,+-- @AUTOSCALING@, or @RUNNING@ status.+stopApplication_force :: Lens.Lens' StopApplication (Prelude.Maybe Prelude.Bool)+stopApplication_force = Lens.lens (\StopApplication' {force} -> force) (\s@StopApplication' {} a -> s {force = a} :: StopApplication)++-- | The name of the running application to stop.+stopApplication_applicationName :: Lens.Lens' StopApplication Prelude.Text+stopApplication_applicationName = Lens.lens (\StopApplication' {applicationName} -> applicationName) (\s@StopApplication' {} a -> s {applicationName = 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` force+      `Prelude.hashWithSalt` applicationName++instance Prelude.NFData StopApplication where+  rnf StopApplication' {..} =+    Prelude.rnf force+      `Prelude.seq` Prelude.rnf applicationName++instance Data.ToHeaders StopApplication where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "X-Amz-Target"+              Data.=# ( "KinesisAnalytics_20180523.StopApplication" ::+                          Prelude.ByteString+                      ),+            "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance Data.ToJSON StopApplication where+  toJSON StopApplication' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("Force" Data..=) Prelude.<$> force,+            Prelude.Just+              ("ApplicationName" Data..= applicationName)+          ]+      )++instance Data.ToPath StopApplication where+  toPath = Prelude.const "/"++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/KinesisAnalyticsV2/TagResource.hs view
@@ -0,0 +1,174 @@+{-# 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.KinesisAnalyticsV2.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 key-value tags to a Kinesis Data Analytics application.+-- Note that the maximum number of application tags includes system tags.+-- The maximum number of user-defined application tags is 50. For more+-- information, see+-- <https://docs.aws.amazon.com/kinesisanalytics/latest/java/how-tagging.html Using Tagging>.+module Amazonka.KinesisAnalyticsV2.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.KinesisAnalyticsV2.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 ARN of the application to assign the tags.+    resourceARN :: Prelude.Text,+    -- | The key-value tags to assign to the application.+    tags :: Prelude.NonEmpty Tag+  }+  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 ARN of the application to assign the tags.+--+-- 'tags', 'tagResource_tags' - The key-value tags to assign to the application.+newTagResource ::+  -- | 'resourceARN'+  Prelude.Text ->+  -- | 'tags'+  Prelude.NonEmpty Tag ->+  TagResource+newTagResource pResourceARN_ pTags_ =+  TagResource'+    { resourceARN = pResourceARN_,+      tags = Lens.coerced Lens.# pTags_+    }++-- | The ARN of the application to assign the tags.+tagResource_resourceARN :: Lens.Lens' TagResource Prelude.Text+tagResource_resourceARN = Lens.lens (\TagResource' {resourceARN} -> resourceARN) (\s@TagResource' {} a -> s {resourceARN = a} :: TagResource)++-- | The key-value tags to assign to the application.+tagResource_tags :: Lens.Lens' TagResource (Prelude.NonEmpty Tag)+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+          [ "X-Amz-Target"+              Data.=# ( "KinesisAnalytics_20180523.TagResource" ::+                          Prelude.ByteString+                      ),+            "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance Data.ToJSON TagResource where+  toJSON TagResource' {..} =+    Data.object+      ( Prelude.catMaybes+          [ Prelude.Just ("ResourceARN" Data..= resourceARN),+            Prelude.Just ("Tags" Data..= tags)+          ]+      )++instance Data.ToPath TagResource where+  toPath = Prelude.const "/"++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/KinesisAnalyticsV2/Types.hs view
@@ -0,0 +1,1174 @@+{-# 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.KinesisAnalyticsV2.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.KinesisAnalyticsV2.Types+  ( -- * Service Configuration+    defaultService,++    -- * Errors+    _CodeValidationException,+    _ConcurrentModificationException,+    _InvalidApplicationConfigurationException,+    _InvalidArgumentException,+    _InvalidRequestException,+    _LimitExceededException,+    _ResourceInUseException,+    _ResourceNotFoundException,+    _ResourceProvisionedThroughputExceededException,+    _ServiceUnavailableException,+    _TooManyTagsException,+    _UnableToDetectSchemaException,+    _UnsupportedOperationException,++    -- * ApplicationMode+    ApplicationMode (..),++    -- * ApplicationRestoreType+    ApplicationRestoreType (..),++    -- * ApplicationStatus+    ApplicationStatus (..),++    -- * ArtifactType+    ArtifactType (..),++    -- * CodeContentType+    CodeContentType (..),++    -- * ConfigurationType+    ConfigurationType (..),++    -- * InputStartingPosition+    InputStartingPosition (..),++    -- * LogLevel+    LogLevel (..),++    -- * MetricsLevel+    MetricsLevel (..),++    -- * RecordFormatType+    RecordFormatType (..),++    -- * RuntimeEnvironment+    RuntimeEnvironment (..),++    -- * SnapshotStatus+    SnapshotStatus (..),++    -- * UrlType+    UrlType (..),++    -- * ApplicationCodeConfiguration+    ApplicationCodeConfiguration (..),+    newApplicationCodeConfiguration,+    applicationCodeConfiguration_codeContent,+    applicationCodeConfiguration_codeContentType,++    -- * ApplicationCodeConfigurationDescription+    ApplicationCodeConfigurationDescription (..),+    newApplicationCodeConfigurationDescription,+    applicationCodeConfigurationDescription_codeContentDescription,+    applicationCodeConfigurationDescription_codeContentType,++    -- * ApplicationCodeConfigurationUpdate+    ApplicationCodeConfigurationUpdate (..),+    newApplicationCodeConfigurationUpdate,+    applicationCodeConfigurationUpdate_codeContentTypeUpdate,+    applicationCodeConfigurationUpdate_codeContentUpdate,++    -- * ApplicationConfiguration+    ApplicationConfiguration (..),+    newApplicationConfiguration,+    applicationConfiguration_applicationCodeConfiguration,+    applicationConfiguration_applicationSnapshotConfiguration,+    applicationConfiguration_environmentProperties,+    applicationConfiguration_flinkApplicationConfiguration,+    applicationConfiguration_sqlApplicationConfiguration,+    applicationConfiguration_vpcConfigurations,+    applicationConfiguration_zeppelinApplicationConfiguration,++    -- * ApplicationConfigurationDescription+    ApplicationConfigurationDescription (..),+    newApplicationConfigurationDescription,+    applicationConfigurationDescription_applicationCodeConfigurationDescription,+    applicationConfigurationDescription_applicationSnapshotConfigurationDescription,+    applicationConfigurationDescription_environmentPropertyDescriptions,+    applicationConfigurationDescription_flinkApplicationConfigurationDescription,+    applicationConfigurationDescription_runConfigurationDescription,+    applicationConfigurationDescription_sqlApplicationConfigurationDescription,+    applicationConfigurationDescription_vpcConfigurationDescriptions,+    applicationConfigurationDescription_zeppelinApplicationConfigurationDescription,++    -- * ApplicationConfigurationUpdate+    ApplicationConfigurationUpdate (..),+    newApplicationConfigurationUpdate,+    applicationConfigurationUpdate_applicationCodeConfigurationUpdate,+    applicationConfigurationUpdate_applicationSnapshotConfigurationUpdate,+    applicationConfigurationUpdate_environmentPropertyUpdates,+    applicationConfigurationUpdate_flinkApplicationConfigurationUpdate,+    applicationConfigurationUpdate_sqlApplicationConfigurationUpdate,+    applicationConfigurationUpdate_vpcConfigurationUpdates,+    applicationConfigurationUpdate_zeppelinApplicationConfigurationUpdate,++    -- * ApplicationDetail+    ApplicationDetail (..),+    newApplicationDetail,+    applicationDetail_applicationConfigurationDescription,+    applicationDetail_applicationDescription,+    applicationDetail_applicationMaintenanceConfigurationDescription,+    applicationDetail_applicationMode,+    applicationDetail_applicationVersionRolledBackFrom,+    applicationDetail_applicationVersionRolledBackTo,+    applicationDetail_applicationVersionUpdatedFrom,+    applicationDetail_cloudWatchLoggingOptionDescriptions,+    applicationDetail_conditionalToken,+    applicationDetail_createTimestamp,+    applicationDetail_lastUpdateTimestamp,+    applicationDetail_serviceExecutionRole,+    applicationDetail_applicationARN,+    applicationDetail_applicationName,+    applicationDetail_runtimeEnvironment,+    applicationDetail_applicationStatus,+    applicationDetail_applicationVersionId,++    -- * ApplicationMaintenanceConfigurationDescription+    ApplicationMaintenanceConfigurationDescription (..),+    newApplicationMaintenanceConfigurationDescription,+    applicationMaintenanceConfigurationDescription_applicationMaintenanceWindowStartTime,+    applicationMaintenanceConfigurationDescription_applicationMaintenanceWindowEndTime,++    -- * ApplicationMaintenanceConfigurationUpdate+    ApplicationMaintenanceConfigurationUpdate (..),+    newApplicationMaintenanceConfigurationUpdate,+    applicationMaintenanceConfigurationUpdate_applicationMaintenanceWindowStartTimeUpdate,++    -- * ApplicationRestoreConfiguration+    ApplicationRestoreConfiguration (..),+    newApplicationRestoreConfiguration,+    applicationRestoreConfiguration_snapshotName,+    applicationRestoreConfiguration_applicationRestoreType,++    -- * ApplicationSnapshotConfiguration+    ApplicationSnapshotConfiguration (..),+    newApplicationSnapshotConfiguration,+    applicationSnapshotConfiguration_snapshotsEnabled,++    -- * ApplicationSnapshotConfigurationDescription+    ApplicationSnapshotConfigurationDescription (..),+    newApplicationSnapshotConfigurationDescription,+    applicationSnapshotConfigurationDescription_snapshotsEnabled,++    -- * ApplicationSnapshotConfigurationUpdate+    ApplicationSnapshotConfigurationUpdate (..),+    newApplicationSnapshotConfigurationUpdate,+    applicationSnapshotConfigurationUpdate_snapshotsEnabledUpdate,++    -- * ApplicationSummary+    ApplicationSummary (..),+    newApplicationSummary,+    applicationSummary_applicationMode,+    applicationSummary_applicationName,+    applicationSummary_applicationARN,+    applicationSummary_applicationStatus,+    applicationSummary_applicationVersionId,+    applicationSummary_runtimeEnvironment,++    -- * ApplicationVersionSummary+    ApplicationVersionSummary (..),+    newApplicationVersionSummary,+    applicationVersionSummary_applicationVersionId,+    applicationVersionSummary_applicationStatus,++    -- * CSVMappingParameters+    CSVMappingParameters (..),+    newCSVMappingParameters,+    cSVMappingParameters_recordRowDelimiter,+    cSVMappingParameters_recordColumnDelimiter,++    -- * CatalogConfiguration+    CatalogConfiguration (..),+    newCatalogConfiguration,+    catalogConfiguration_glueDataCatalogConfiguration,++    -- * CatalogConfigurationDescription+    CatalogConfigurationDescription (..),+    newCatalogConfigurationDescription,+    catalogConfigurationDescription_glueDataCatalogConfigurationDescription,++    -- * CatalogConfigurationUpdate+    CatalogConfigurationUpdate (..),+    newCatalogConfigurationUpdate,+    catalogConfigurationUpdate_glueDataCatalogConfigurationUpdate,++    -- * CheckpointConfiguration+    CheckpointConfiguration (..),+    newCheckpointConfiguration,+    checkpointConfiguration_checkpointInterval,+    checkpointConfiguration_checkpointingEnabled,+    checkpointConfiguration_minPauseBetweenCheckpoints,+    checkpointConfiguration_configurationType,++    -- * CheckpointConfigurationDescription+    CheckpointConfigurationDescription (..),+    newCheckpointConfigurationDescription,+    checkpointConfigurationDescription_checkpointInterval,+    checkpointConfigurationDescription_checkpointingEnabled,+    checkpointConfigurationDescription_configurationType,+    checkpointConfigurationDescription_minPauseBetweenCheckpoints,++    -- * CheckpointConfigurationUpdate+    CheckpointConfigurationUpdate (..),+    newCheckpointConfigurationUpdate,+    checkpointConfigurationUpdate_checkpointIntervalUpdate,+    checkpointConfigurationUpdate_checkpointingEnabledUpdate,+    checkpointConfigurationUpdate_configurationTypeUpdate,+    checkpointConfigurationUpdate_minPauseBetweenCheckpointsUpdate,++    -- * CloudWatchLoggingOption+    CloudWatchLoggingOption (..),+    newCloudWatchLoggingOption,+    cloudWatchLoggingOption_logStreamARN,++    -- * CloudWatchLoggingOptionDescription+    CloudWatchLoggingOptionDescription (..),+    newCloudWatchLoggingOptionDescription,+    cloudWatchLoggingOptionDescription_cloudWatchLoggingOptionId,+    cloudWatchLoggingOptionDescription_roleARN,+    cloudWatchLoggingOptionDescription_logStreamARN,++    -- * CloudWatchLoggingOptionUpdate+    CloudWatchLoggingOptionUpdate (..),+    newCloudWatchLoggingOptionUpdate,+    cloudWatchLoggingOptionUpdate_logStreamARNUpdate,+    cloudWatchLoggingOptionUpdate_cloudWatchLoggingOptionId,++    -- * CodeContent+    CodeContent (..),+    newCodeContent,+    codeContent_s3ContentLocation,+    codeContent_textContent,+    codeContent_zipFileContent,++    -- * CodeContentDescription+    CodeContentDescription (..),+    newCodeContentDescription,+    codeContentDescription_codeMD5,+    codeContentDescription_codeSize,+    codeContentDescription_s3ApplicationCodeLocationDescription,+    codeContentDescription_textContent,++    -- * CodeContentUpdate+    CodeContentUpdate (..),+    newCodeContentUpdate,+    codeContentUpdate_s3ContentLocationUpdate,+    codeContentUpdate_textContentUpdate,+    codeContentUpdate_zipFileContentUpdate,++    -- * CustomArtifactConfiguration+    CustomArtifactConfiguration (..),+    newCustomArtifactConfiguration,+    customArtifactConfiguration_mavenReference,+    customArtifactConfiguration_s3ContentLocation,+    customArtifactConfiguration_artifactType,++    -- * CustomArtifactConfigurationDescription+    CustomArtifactConfigurationDescription (..),+    newCustomArtifactConfigurationDescription,+    customArtifactConfigurationDescription_artifactType,+    customArtifactConfigurationDescription_mavenReferenceDescription,+    customArtifactConfigurationDescription_s3ContentLocationDescription,++    -- * DeployAsApplicationConfiguration+    DeployAsApplicationConfiguration (..),+    newDeployAsApplicationConfiguration,+    deployAsApplicationConfiguration_s3ContentLocation,++    -- * DeployAsApplicationConfigurationDescription+    DeployAsApplicationConfigurationDescription (..),+    newDeployAsApplicationConfigurationDescription,+    deployAsApplicationConfigurationDescription_s3ContentLocationDescription,++    -- * DeployAsApplicationConfigurationUpdate+    DeployAsApplicationConfigurationUpdate (..),+    newDeployAsApplicationConfigurationUpdate,+    deployAsApplicationConfigurationUpdate_s3ContentLocationUpdate,++    -- * DestinationSchema+    DestinationSchema (..),+    newDestinationSchema,+    destinationSchema_recordFormatType,++    -- * EnvironmentProperties+    EnvironmentProperties (..),+    newEnvironmentProperties,+    environmentProperties_propertyGroups,++    -- * EnvironmentPropertyDescriptions+    EnvironmentPropertyDescriptions (..),+    newEnvironmentPropertyDescriptions,+    environmentPropertyDescriptions_propertyGroupDescriptions,++    -- * EnvironmentPropertyUpdates+    EnvironmentPropertyUpdates (..),+    newEnvironmentPropertyUpdates,+    environmentPropertyUpdates_propertyGroups,++    -- * FlinkApplicationConfiguration+    FlinkApplicationConfiguration (..),+    newFlinkApplicationConfiguration,+    flinkApplicationConfiguration_checkpointConfiguration,+    flinkApplicationConfiguration_monitoringConfiguration,+    flinkApplicationConfiguration_parallelismConfiguration,++    -- * FlinkApplicationConfigurationDescription+    FlinkApplicationConfigurationDescription (..),+    newFlinkApplicationConfigurationDescription,+    flinkApplicationConfigurationDescription_checkpointConfigurationDescription,+    flinkApplicationConfigurationDescription_jobPlanDescription,+    flinkApplicationConfigurationDescription_monitoringConfigurationDescription,+    flinkApplicationConfigurationDescription_parallelismConfigurationDescription,++    -- * FlinkApplicationConfigurationUpdate+    FlinkApplicationConfigurationUpdate (..),+    newFlinkApplicationConfigurationUpdate,+    flinkApplicationConfigurationUpdate_checkpointConfigurationUpdate,+    flinkApplicationConfigurationUpdate_monitoringConfigurationUpdate,+    flinkApplicationConfigurationUpdate_parallelismConfigurationUpdate,++    -- * FlinkRunConfiguration+    FlinkRunConfiguration (..),+    newFlinkRunConfiguration,+    flinkRunConfiguration_allowNonRestoredState,++    -- * GlueDataCatalogConfiguration+    GlueDataCatalogConfiguration (..),+    newGlueDataCatalogConfiguration,+    glueDataCatalogConfiguration_databaseARN,++    -- * GlueDataCatalogConfigurationDescription+    GlueDataCatalogConfigurationDescription (..),+    newGlueDataCatalogConfigurationDescription,+    glueDataCatalogConfigurationDescription_databaseARN,++    -- * GlueDataCatalogConfigurationUpdate+    GlueDataCatalogConfigurationUpdate (..),+    newGlueDataCatalogConfigurationUpdate,+    glueDataCatalogConfigurationUpdate_databaseARNUpdate,++    -- * Input+    Input (..),+    newInput,+    input_inputParallelism,+    input_inputProcessingConfiguration,+    input_kinesisFirehoseInput,+    input_kinesisStreamsInput,+    input_namePrefix,+    input_inputSchema,++    -- * InputDescription+    InputDescription (..),+    newInputDescription,+    inputDescription_inAppStreamNames,+    inputDescription_inputId,+    inputDescription_inputParallelism,+    inputDescription_inputProcessingConfigurationDescription,+    inputDescription_inputSchema,+    inputDescription_inputStartingPositionConfiguration,+    inputDescription_kinesisFirehoseInputDescription,+    inputDescription_kinesisStreamsInputDescription,+    inputDescription_namePrefix,++    -- * InputLambdaProcessor+    InputLambdaProcessor (..),+    newInputLambdaProcessor,+    inputLambdaProcessor_resourceARN,++    -- * InputLambdaProcessorDescription+    InputLambdaProcessorDescription (..),+    newInputLambdaProcessorDescription,+    inputLambdaProcessorDescription_roleARN,+    inputLambdaProcessorDescription_resourceARN,++    -- * InputLambdaProcessorUpdate+    InputLambdaProcessorUpdate (..),+    newInputLambdaProcessorUpdate,+    inputLambdaProcessorUpdate_resourceARNUpdate,++    -- * InputParallelism+    InputParallelism (..),+    newInputParallelism,+    inputParallelism_count,++    -- * InputParallelismUpdate+    InputParallelismUpdate (..),+    newInputParallelismUpdate,+    inputParallelismUpdate_countUpdate,++    -- * InputProcessingConfiguration+    InputProcessingConfiguration (..),+    newInputProcessingConfiguration,+    inputProcessingConfiguration_inputLambdaProcessor,++    -- * InputProcessingConfigurationDescription+    InputProcessingConfigurationDescription (..),+    newInputProcessingConfigurationDescription,+    inputProcessingConfigurationDescription_inputLambdaProcessorDescription,++    -- * InputProcessingConfigurationUpdate+    InputProcessingConfigurationUpdate (..),+    newInputProcessingConfigurationUpdate,+    inputProcessingConfigurationUpdate_inputLambdaProcessorUpdate,++    -- * InputSchemaUpdate+    InputSchemaUpdate (..),+    newInputSchemaUpdate,+    inputSchemaUpdate_recordColumnUpdates,+    inputSchemaUpdate_recordEncodingUpdate,+    inputSchemaUpdate_recordFormatUpdate,++    -- * InputStartingPositionConfiguration+    InputStartingPositionConfiguration (..),+    newInputStartingPositionConfiguration,+    inputStartingPositionConfiguration_inputStartingPosition,++    -- * InputUpdate+    InputUpdate (..),+    newInputUpdate,+    inputUpdate_inputParallelismUpdate,+    inputUpdate_inputProcessingConfigurationUpdate,+    inputUpdate_inputSchemaUpdate,+    inputUpdate_kinesisFirehoseInputUpdate,+    inputUpdate_kinesisStreamsInputUpdate,+    inputUpdate_namePrefixUpdate,+    inputUpdate_inputId,++    -- * JSONMappingParameters+    JSONMappingParameters (..),+    newJSONMappingParameters,+    jSONMappingParameters_recordRowPath,++    -- * KinesisFirehoseInput+    KinesisFirehoseInput (..),+    newKinesisFirehoseInput,+    kinesisFirehoseInput_resourceARN,++    -- * KinesisFirehoseInputDescription+    KinesisFirehoseInputDescription (..),+    newKinesisFirehoseInputDescription,+    kinesisFirehoseInputDescription_roleARN,+    kinesisFirehoseInputDescription_resourceARN,++    -- * KinesisFirehoseInputUpdate+    KinesisFirehoseInputUpdate (..),+    newKinesisFirehoseInputUpdate,+    kinesisFirehoseInputUpdate_resourceARNUpdate,++    -- * KinesisFirehoseOutput+    KinesisFirehoseOutput (..),+    newKinesisFirehoseOutput,+    kinesisFirehoseOutput_resourceARN,++    -- * KinesisFirehoseOutputDescription+    KinesisFirehoseOutputDescription (..),+    newKinesisFirehoseOutputDescription,+    kinesisFirehoseOutputDescription_roleARN,+    kinesisFirehoseOutputDescription_resourceARN,++    -- * KinesisFirehoseOutputUpdate+    KinesisFirehoseOutputUpdate (..),+    newKinesisFirehoseOutputUpdate,+    kinesisFirehoseOutputUpdate_resourceARNUpdate,++    -- * KinesisStreamsInput+    KinesisStreamsInput (..),+    newKinesisStreamsInput,+    kinesisStreamsInput_resourceARN,++    -- * KinesisStreamsInputDescription+    KinesisStreamsInputDescription (..),+    newKinesisStreamsInputDescription,+    kinesisStreamsInputDescription_roleARN,+    kinesisStreamsInputDescription_resourceARN,++    -- * KinesisStreamsInputUpdate+    KinesisStreamsInputUpdate (..),+    newKinesisStreamsInputUpdate,+    kinesisStreamsInputUpdate_resourceARNUpdate,++    -- * KinesisStreamsOutput+    KinesisStreamsOutput (..),+    newKinesisStreamsOutput,+    kinesisStreamsOutput_resourceARN,++    -- * KinesisStreamsOutputDescription+    KinesisStreamsOutputDescription (..),+    newKinesisStreamsOutputDescription,+    kinesisStreamsOutputDescription_roleARN,+    kinesisStreamsOutputDescription_resourceARN,++    -- * KinesisStreamsOutputUpdate+    KinesisStreamsOutputUpdate (..),+    newKinesisStreamsOutputUpdate,+    kinesisStreamsOutputUpdate_resourceARNUpdate,++    -- * LambdaOutput+    LambdaOutput (..),+    newLambdaOutput,+    lambdaOutput_resourceARN,++    -- * LambdaOutputDescription+    LambdaOutputDescription (..),+    newLambdaOutputDescription,+    lambdaOutputDescription_roleARN,+    lambdaOutputDescription_resourceARN,++    -- * LambdaOutputUpdate+    LambdaOutputUpdate (..),+    newLambdaOutputUpdate,+    lambdaOutputUpdate_resourceARNUpdate,++    -- * MappingParameters+    MappingParameters (..),+    newMappingParameters,+    mappingParameters_cSVMappingParameters,+    mappingParameters_jSONMappingParameters,++    -- * MavenReference+    MavenReference (..),+    newMavenReference,+    mavenReference_groupId,+    mavenReference_artifactId,+    mavenReference_version,++    -- * MonitoringConfiguration+    MonitoringConfiguration (..),+    newMonitoringConfiguration,+    monitoringConfiguration_logLevel,+    monitoringConfiguration_metricsLevel,+    monitoringConfiguration_configurationType,++    -- * MonitoringConfigurationDescription+    MonitoringConfigurationDescription (..),+    newMonitoringConfigurationDescription,+    monitoringConfigurationDescription_configurationType,+    monitoringConfigurationDescription_logLevel,+    monitoringConfigurationDescription_metricsLevel,++    -- * MonitoringConfigurationUpdate+    MonitoringConfigurationUpdate (..),+    newMonitoringConfigurationUpdate,+    monitoringConfigurationUpdate_configurationTypeUpdate,+    monitoringConfigurationUpdate_logLevelUpdate,+    monitoringConfigurationUpdate_metricsLevelUpdate,++    -- * Output+    Output (..),+    newOutput,+    output_kinesisFirehoseOutput,+    output_kinesisStreamsOutput,+    output_lambdaOutput,+    output_name,+    output_destinationSchema,++    -- * OutputDescription+    OutputDescription (..),+    newOutputDescription,+    outputDescription_destinationSchema,+    outputDescription_kinesisFirehoseOutputDescription,+    outputDescription_kinesisStreamsOutputDescription,+    outputDescription_lambdaOutputDescription,+    outputDescription_name,+    outputDescription_outputId,++    -- * OutputUpdate+    OutputUpdate (..),+    newOutputUpdate,+    outputUpdate_destinationSchemaUpdate,+    outputUpdate_kinesisFirehoseOutputUpdate,+    outputUpdate_kinesisStreamsOutputUpdate,+    outputUpdate_lambdaOutputUpdate,+    outputUpdate_nameUpdate,+    outputUpdate_outputId,++    -- * ParallelismConfiguration+    ParallelismConfiguration (..),+    newParallelismConfiguration,+    parallelismConfiguration_autoScalingEnabled,+    parallelismConfiguration_parallelism,+    parallelismConfiguration_parallelismPerKPU,+    parallelismConfiguration_configurationType,++    -- * ParallelismConfigurationDescription+    ParallelismConfigurationDescription (..),+    newParallelismConfigurationDescription,+    parallelismConfigurationDescription_autoScalingEnabled,+    parallelismConfigurationDescription_configurationType,+    parallelismConfigurationDescription_currentParallelism,+    parallelismConfigurationDescription_parallelism,+    parallelismConfigurationDescription_parallelismPerKPU,++    -- * ParallelismConfigurationUpdate+    ParallelismConfigurationUpdate (..),+    newParallelismConfigurationUpdate,+    parallelismConfigurationUpdate_autoScalingEnabledUpdate,+    parallelismConfigurationUpdate_configurationTypeUpdate,+    parallelismConfigurationUpdate_parallelismPerKPUUpdate,+    parallelismConfigurationUpdate_parallelismUpdate,++    -- * PropertyGroup+    PropertyGroup (..),+    newPropertyGroup,+    propertyGroup_propertyGroupId,+    propertyGroup_propertyMap,++    -- * RecordColumn+    RecordColumn (..),+    newRecordColumn,+    recordColumn_mapping,+    recordColumn_name,+    recordColumn_sqlType,++    -- * RecordFormat+    RecordFormat (..),+    newRecordFormat,+    recordFormat_mappingParameters,+    recordFormat_recordFormatType,++    -- * ReferenceDataSource+    ReferenceDataSource (..),+    newReferenceDataSource,+    referenceDataSource_s3ReferenceDataSource,+    referenceDataSource_tableName,+    referenceDataSource_referenceSchema,++    -- * ReferenceDataSourceDescription+    ReferenceDataSourceDescription (..),+    newReferenceDataSourceDescription,+    referenceDataSourceDescription_referenceSchema,+    referenceDataSourceDescription_referenceId,+    referenceDataSourceDescription_tableName,+    referenceDataSourceDescription_s3ReferenceDataSourceDescription,++    -- * ReferenceDataSourceUpdate+    ReferenceDataSourceUpdate (..),+    newReferenceDataSourceUpdate,+    referenceDataSourceUpdate_referenceSchemaUpdate,+    referenceDataSourceUpdate_s3ReferenceDataSourceUpdate,+    referenceDataSourceUpdate_tableNameUpdate,+    referenceDataSourceUpdate_referenceId,++    -- * RunConfiguration+    RunConfiguration (..),+    newRunConfiguration,+    runConfiguration_applicationRestoreConfiguration,+    runConfiguration_flinkRunConfiguration,+    runConfiguration_sqlRunConfigurations,++    -- * RunConfigurationDescription+    RunConfigurationDescription (..),+    newRunConfigurationDescription,+    runConfigurationDescription_applicationRestoreConfigurationDescription,+    runConfigurationDescription_flinkRunConfigurationDescription,++    -- * RunConfigurationUpdate+    RunConfigurationUpdate (..),+    newRunConfigurationUpdate,+    runConfigurationUpdate_applicationRestoreConfiguration,+    runConfigurationUpdate_flinkRunConfiguration,++    -- * S3ApplicationCodeLocationDescription+    S3ApplicationCodeLocationDescription (..),+    newS3ApplicationCodeLocationDescription,+    s3ApplicationCodeLocationDescription_objectVersion,+    s3ApplicationCodeLocationDescription_bucketARN,+    s3ApplicationCodeLocationDescription_fileKey,++    -- * S3Configuration+    S3Configuration (..),+    newS3Configuration,+    s3Configuration_bucketARN,+    s3Configuration_fileKey,++    -- * S3ContentBaseLocation+    S3ContentBaseLocation (..),+    newS3ContentBaseLocation,+    s3ContentBaseLocation_basePath,+    s3ContentBaseLocation_bucketARN,++    -- * S3ContentBaseLocationDescription+    S3ContentBaseLocationDescription (..),+    newS3ContentBaseLocationDescription,+    s3ContentBaseLocationDescription_basePath,+    s3ContentBaseLocationDescription_bucketARN,++    -- * S3ContentBaseLocationUpdate+    S3ContentBaseLocationUpdate (..),+    newS3ContentBaseLocationUpdate,+    s3ContentBaseLocationUpdate_basePathUpdate,+    s3ContentBaseLocationUpdate_bucketARNUpdate,++    -- * S3ContentLocation+    S3ContentLocation (..),+    newS3ContentLocation,+    s3ContentLocation_objectVersion,+    s3ContentLocation_bucketARN,+    s3ContentLocation_fileKey,++    -- * S3ContentLocationUpdate+    S3ContentLocationUpdate (..),+    newS3ContentLocationUpdate,+    s3ContentLocationUpdate_bucketARNUpdate,+    s3ContentLocationUpdate_fileKeyUpdate,+    s3ContentLocationUpdate_objectVersionUpdate,++    -- * S3ReferenceDataSource+    S3ReferenceDataSource (..),+    newS3ReferenceDataSource,+    s3ReferenceDataSource_bucketARN,+    s3ReferenceDataSource_fileKey,++    -- * S3ReferenceDataSourceDescription+    S3ReferenceDataSourceDescription (..),+    newS3ReferenceDataSourceDescription,+    s3ReferenceDataSourceDescription_referenceRoleARN,+    s3ReferenceDataSourceDescription_bucketARN,+    s3ReferenceDataSourceDescription_fileKey,++    -- * S3ReferenceDataSourceUpdate+    S3ReferenceDataSourceUpdate (..),+    newS3ReferenceDataSourceUpdate,+    s3ReferenceDataSourceUpdate_bucketARNUpdate,+    s3ReferenceDataSourceUpdate_fileKeyUpdate,++    -- * SnapshotDetails+    SnapshotDetails (..),+    newSnapshotDetails,+    snapshotDetails_snapshotCreationTimestamp,+    snapshotDetails_snapshotName,+    snapshotDetails_snapshotStatus,+    snapshotDetails_applicationVersionId,++    -- * SourceSchema+    SourceSchema (..),+    newSourceSchema,+    sourceSchema_recordEncoding,+    sourceSchema_recordFormat,+    sourceSchema_recordColumns,++    -- * SqlApplicationConfiguration+    SqlApplicationConfiguration (..),+    newSqlApplicationConfiguration,+    sqlApplicationConfiguration_inputs,+    sqlApplicationConfiguration_outputs,+    sqlApplicationConfiguration_referenceDataSources,++    -- * SqlApplicationConfigurationDescription+    SqlApplicationConfigurationDescription (..),+    newSqlApplicationConfigurationDescription,+    sqlApplicationConfigurationDescription_inputDescriptions,+    sqlApplicationConfigurationDescription_outputDescriptions,+    sqlApplicationConfigurationDescription_referenceDataSourceDescriptions,++    -- * SqlApplicationConfigurationUpdate+    SqlApplicationConfigurationUpdate (..),+    newSqlApplicationConfigurationUpdate,+    sqlApplicationConfigurationUpdate_inputUpdates,+    sqlApplicationConfigurationUpdate_outputUpdates,+    sqlApplicationConfigurationUpdate_referenceDataSourceUpdates,++    -- * SqlRunConfiguration+    SqlRunConfiguration (..),+    newSqlRunConfiguration,+    sqlRunConfiguration_inputId,+    sqlRunConfiguration_inputStartingPositionConfiguration,++    -- * Tag+    Tag (..),+    newTag,+    tag_value,+    tag_key,++    -- * VpcConfiguration+    VpcConfiguration (..),+    newVpcConfiguration,+    vpcConfiguration_subnetIds,+    vpcConfiguration_securityGroupIds,++    -- * VpcConfigurationDescription+    VpcConfigurationDescription (..),+    newVpcConfigurationDescription,+    vpcConfigurationDescription_vpcConfigurationId,+    vpcConfigurationDescription_vpcId,+    vpcConfigurationDescription_subnetIds,+    vpcConfigurationDescription_securityGroupIds,++    -- * VpcConfigurationUpdate+    VpcConfigurationUpdate (..),+    newVpcConfigurationUpdate,+    vpcConfigurationUpdate_securityGroupIdUpdates,+    vpcConfigurationUpdate_subnetIdUpdates,+    vpcConfigurationUpdate_vpcConfigurationId,++    -- * ZeppelinApplicationConfiguration+    ZeppelinApplicationConfiguration (..),+    newZeppelinApplicationConfiguration,+    zeppelinApplicationConfiguration_catalogConfiguration,+    zeppelinApplicationConfiguration_customArtifactsConfiguration,+    zeppelinApplicationConfiguration_deployAsApplicationConfiguration,+    zeppelinApplicationConfiguration_monitoringConfiguration,++    -- * ZeppelinApplicationConfigurationDescription+    ZeppelinApplicationConfigurationDescription (..),+    newZeppelinApplicationConfigurationDescription,+    zeppelinApplicationConfigurationDescription_catalogConfigurationDescription,+    zeppelinApplicationConfigurationDescription_customArtifactsConfigurationDescription,+    zeppelinApplicationConfigurationDescription_deployAsApplicationConfigurationDescription,+    zeppelinApplicationConfigurationDescription_monitoringConfigurationDescription,++    -- * ZeppelinApplicationConfigurationUpdate+    ZeppelinApplicationConfigurationUpdate (..),+    newZeppelinApplicationConfigurationUpdate,+    zeppelinApplicationConfigurationUpdate_catalogConfigurationUpdate,+    zeppelinApplicationConfigurationUpdate_customArtifactsConfigurationUpdate,+    zeppelinApplicationConfigurationUpdate_deployAsApplicationConfigurationUpdate,+    zeppelinApplicationConfigurationUpdate_monitoringConfigurationUpdate,++    -- * ZeppelinMonitoringConfiguration+    ZeppelinMonitoringConfiguration (..),+    newZeppelinMonitoringConfiguration,+    zeppelinMonitoringConfiguration_logLevel,++    -- * ZeppelinMonitoringConfigurationDescription+    ZeppelinMonitoringConfigurationDescription (..),+    newZeppelinMonitoringConfigurationDescription,+    zeppelinMonitoringConfigurationDescription_logLevel,++    -- * ZeppelinMonitoringConfigurationUpdate+    ZeppelinMonitoringConfigurationUpdate (..),+    newZeppelinMonitoringConfigurationUpdate,+    zeppelinMonitoringConfigurationUpdate_logLevelUpdate,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import Amazonka.KinesisAnalyticsV2.Types.ApplicationCodeConfiguration+import Amazonka.KinesisAnalyticsV2.Types.ApplicationCodeConfigurationDescription+import Amazonka.KinesisAnalyticsV2.Types.ApplicationCodeConfigurationUpdate+import Amazonka.KinesisAnalyticsV2.Types.ApplicationConfiguration+import Amazonka.KinesisAnalyticsV2.Types.ApplicationConfigurationDescription+import Amazonka.KinesisAnalyticsV2.Types.ApplicationConfigurationUpdate+import Amazonka.KinesisAnalyticsV2.Types.ApplicationDetail+import Amazonka.KinesisAnalyticsV2.Types.ApplicationMaintenanceConfigurationDescription+import Amazonka.KinesisAnalyticsV2.Types.ApplicationMaintenanceConfigurationUpdate+import Amazonka.KinesisAnalyticsV2.Types.ApplicationMode+import Amazonka.KinesisAnalyticsV2.Types.ApplicationRestoreConfiguration+import Amazonka.KinesisAnalyticsV2.Types.ApplicationRestoreType+import Amazonka.KinesisAnalyticsV2.Types.ApplicationSnapshotConfiguration+import Amazonka.KinesisAnalyticsV2.Types.ApplicationSnapshotConfigurationDescription+import Amazonka.KinesisAnalyticsV2.Types.ApplicationSnapshotConfigurationUpdate+import Amazonka.KinesisAnalyticsV2.Types.ApplicationStatus+import Amazonka.KinesisAnalyticsV2.Types.ApplicationSummary+import Amazonka.KinesisAnalyticsV2.Types.ApplicationVersionSummary+import Amazonka.KinesisAnalyticsV2.Types.ArtifactType+import Amazonka.KinesisAnalyticsV2.Types.CSVMappingParameters+import Amazonka.KinesisAnalyticsV2.Types.CatalogConfiguration+import Amazonka.KinesisAnalyticsV2.Types.CatalogConfigurationDescription+import Amazonka.KinesisAnalyticsV2.Types.CatalogConfigurationUpdate+import Amazonka.KinesisAnalyticsV2.Types.CheckpointConfiguration+import Amazonka.KinesisAnalyticsV2.Types.CheckpointConfigurationDescription+import Amazonka.KinesisAnalyticsV2.Types.CheckpointConfigurationUpdate+import Amazonka.KinesisAnalyticsV2.Types.CloudWatchLoggingOption+import Amazonka.KinesisAnalyticsV2.Types.CloudWatchLoggingOptionDescription+import Amazonka.KinesisAnalyticsV2.Types.CloudWatchLoggingOptionUpdate+import Amazonka.KinesisAnalyticsV2.Types.CodeContent+import Amazonka.KinesisAnalyticsV2.Types.CodeContentDescription+import Amazonka.KinesisAnalyticsV2.Types.CodeContentType+import Amazonka.KinesisAnalyticsV2.Types.CodeContentUpdate+import Amazonka.KinesisAnalyticsV2.Types.ConfigurationType+import Amazonka.KinesisAnalyticsV2.Types.CustomArtifactConfiguration+import Amazonka.KinesisAnalyticsV2.Types.CustomArtifactConfigurationDescription+import Amazonka.KinesisAnalyticsV2.Types.DeployAsApplicationConfiguration+import Amazonka.KinesisAnalyticsV2.Types.DeployAsApplicationConfigurationDescription+import Amazonka.KinesisAnalyticsV2.Types.DeployAsApplicationConfigurationUpdate+import Amazonka.KinesisAnalyticsV2.Types.DestinationSchema+import Amazonka.KinesisAnalyticsV2.Types.EnvironmentProperties+import Amazonka.KinesisAnalyticsV2.Types.EnvironmentPropertyDescriptions+import Amazonka.KinesisAnalyticsV2.Types.EnvironmentPropertyUpdates+import Amazonka.KinesisAnalyticsV2.Types.FlinkApplicationConfiguration+import Amazonka.KinesisAnalyticsV2.Types.FlinkApplicationConfigurationDescription+import Amazonka.KinesisAnalyticsV2.Types.FlinkApplicationConfigurationUpdate+import Amazonka.KinesisAnalyticsV2.Types.FlinkRunConfiguration+import Amazonka.KinesisAnalyticsV2.Types.GlueDataCatalogConfiguration+import Amazonka.KinesisAnalyticsV2.Types.GlueDataCatalogConfigurationDescription+import Amazonka.KinesisAnalyticsV2.Types.GlueDataCatalogConfigurationUpdate+import Amazonka.KinesisAnalyticsV2.Types.Input+import Amazonka.KinesisAnalyticsV2.Types.InputDescription+import Amazonka.KinesisAnalyticsV2.Types.InputLambdaProcessor+import Amazonka.KinesisAnalyticsV2.Types.InputLambdaProcessorDescription+import Amazonka.KinesisAnalyticsV2.Types.InputLambdaProcessorUpdate+import Amazonka.KinesisAnalyticsV2.Types.InputParallelism+import Amazonka.KinesisAnalyticsV2.Types.InputParallelismUpdate+import Amazonka.KinesisAnalyticsV2.Types.InputProcessingConfiguration+import Amazonka.KinesisAnalyticsV2.Types.InputProcessingConfigurationDescription+import Amazonka.KinesisAnalyticsV2.Types.InputProcessingConfigurationUpdate+import Amazonka.KinesisAnalyticsV2.Types.InputSchemaUpdate+import Amazonka.KinesisAnalyticsV2.Types.InputStartingPosition+import Amazonka.KinesisAnalyticsV2.Types.InputStartingPositionConfiguration+import Amazonka.KinesisAnalyticsV2.Types.InputUpdate+import Amazonka.KinesisAnalyticsV2.Types.JSONMappingParameters+import Amazonka.KinesisAnalyticsV2.Types.KinesisFirehoseInput+import Amazonka.KinesisAnalyticsV2.Types.KinesisFirehoseInputDescription+import Amazonka.KinesisAnalyticsV2.Types.KinesisFirehoseInputUpdate+import Amazonka.KinesisAnalyticsV2.Types.KinesisFirehoseOutput+import Amazonka.KinesisAnalyticsV2.Types.KinesisFirehoseOutputDescription+import Amazonka.KinesisAnalyticsV2.Types.KinesisFirehoseOutputUpdate+import Amazonka.KinesisAnalyticsV2.Types.KinesisStreamsInput+import Amazonka.KinesisAnalyticsV2.Types.KinesisStreamsInputDescription+import Amazonka.KinesisAnalyticsV2.Types.KinesisStreamsInputUpdate+import Amazonka.KinesisAnalyticsV2.Types.KinesisStreamsOutput+import Amazonka.KinesisAnalyticsV2.Types.KinesisStreamsOutputDescription+import Amazonka.KinesisAnalyticsV2.Types.KinesisStreamsOutputUpdate+import Amazonka.KinesisAnalyticsV2.Types.LambdaOutput+import Amazonka.KinesisAnalyticsV2.Types.LambdaOutputDescription+import Amazonka.KinesisAnalyticsV2.Types.LambdaOutputUpdate+import Amazonka.KinesisAnalyticsV2.Types.LogLevel+import Amazonka.KinesisAnalyticsV2.Types.MappingParameters+import Amazonka.KinesisAnalyticsV2.Types.MavenReference+import Amazonka.KinesisAnalyticsV2.Types.MetricsLevel+import Amazonka.KinesisAnalyticsV2.Types.MonitoringConfiguration+import Amazonka.KinesisAnalyticsV2.Types.MonitoringConfigurationDescription+import Amazonka.KinesisAnalyticsV2.Types.MonitoringConfigurationUpdate+import Amazonka.KinesisAnalyticsV2.Types.Output+import Amazonka.KinesisAnalyticsV2.Types.OutputDescription+import Amazonka.KinesisAnalyticsV2.Types.OutputUpdate+import Amazonka.KinesisAnalyticsV2.Types.ParallelismConfiguration+import Amazonka.KinesisAnalyticsV2.Types.ParallelismConfigurationDescription+import Amazonka.KinesisAnalyticsV2.Types.ParallelismConfigurationUpdate+import Amazonka.KinesisAnalyticsV2.Types.PropertyGroup+import Amazonka.KinesisAnalyticsV2.Types.RecordColumn+import Amazonka.KinesisAnalyticsV2.Types.RecordFormat+import Amazonka.KinesisAnalyticsV2.Types.RecordFormatType+import Amazonka.KinesisAnalyticsV2.Types.ReferenceDataSource+import Amazonka.KinesisAnalyticsV2.Types.ReferenceDataSourceDescription+import Amazonka.KinesisAnalyticsV2.Types.ReferenceDataSourceUpdate+import Amazonka.KinesisAnalyticsV2.Types.RunConfiguration+import Amazonka.KinesisAnalyticsV2.Types.RunConfigurationDescription+import Amazonka.KinesisAnalyticsV2.Types.RunConfigurationUpdate+import Amazonka.KinesisAnalyticsV2.Types.RuntimeEnvironment+import Amazonka.KinesisAnalyticsV2.Types.S3ApplicationCodeLocationDescription+import Amazonka.KinesisAnalyticsV2.Types.S3Configuration+import Amazonka.KinesisAnalyticsV2.Types.S3ContentBaseLocation+import Amazonka.KinesisAnalyticsV2.Types.S3ContentBaseLocationDescription+import Amazonka.KinesisAnalyticsV2.Types.S3ContentBaseLocationUpdate+import Amazonka.KinesisAnalyticsV2.Types.S3ContentLocation+import Amazonka.KinesisAnalyticsV2.Types.S3ContentLocationUpdate+import Amazonka.KinesisAnalyticsV2.Types.S3ReferenceDataSource+import Amazonka.KinesisAnalyticsV2.Types.S3ReferenceDataSourceDescription+import Amazonka.KinesisAnalyticsV2.Types.S3ReferenceDataSourceUpdate+import Amazonka.KinesisAnalyticsV2.Types.SnapshotDetails+import Amazonka.KinesisAnalyticsV2.Types.SnapshotStatus+import Amazonka.KinesisAnalyticsV2.Types.SourceSchema+import Amazonka.KinesisAnalyticsV2.Types.SqlApplicationConfiguration+import Amazonka.KinesisAnalyticsV2.Types.SqlApplicationConfigurationDescription+import Amazonka.KinesisAnalyticsV2.Types.SqlApplicationConfigurationUpdate+import Amazonka.KinesisAnalyticsV2.Types.SqlRunConfiguration+import Amazonka.KinesisAnalyticsV2.Types.Tag+import Amazonka.KinesisAnalyticsV2.Types.UrlType+import Amazonka.KinesisAnalyticsV2.Types.VpcConfiguration+import Amazonka.KinesisAnalyticsV2.Types.VpcConfigurationDescription+import Amazonka.KinesisAnalyticsV2.Types.VpcConfigurationUpdate+import Amazonka.KinesisAnalyticsV2.Types.ZeppelinApplicationConfiguration+import Amazonka.KinesisAnalyticsV2.Types.ZeppelinApplicationConfigurationDescription+import Amazonka.KinesisAnalyticsV2.Types.ZeppelinApplicationConfigurationUpdate+import Amazonka.KinesisAnalyticsV2.Types.ZeppelinMonitoringConfiguration+import Amazonka.KinesisAnalyticsV2.Types.ZeppelinMonitoringConfigurationDescription+import Amazonka.KinesisAnalyticsV2.Types.ZeppelinMonitoringConfigurationUpdate+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Sign.V4 as Sign++-- | API version @2018-05-23@ of the Amazon Kinesis Analytics SDK configuration.+defaultService :: Core.Service+defaultService =+  Core.Service+    { Core.abbrev = "KinesisAnalyticsV2",+      Core.signer = Sign.v4,+      Core.endpointPrefix = "kinesisanalytics",+      Core.signingName = "kinesisanalytics",+      Core.version = "2018-05-23",+      Core.s3AddressingStyle = Core.S3AddressingStyleAuto,+      Core.endpoint = Core.defaultEndpoint defaultService,+      Core.timeout = Prelude.Just 70,+      Core.check = Core.statusSuccess,+      Core.error =+        Core.parseJSONError "KinesisAnalyticsV2",+      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 user-provided application code (query) is not valid. This can be a+-- simple syntax error.+_CodeValidationException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_CodeValidationException =+  Core._MatchServiceError+    defaultService+    "CodeValidationException"++-- | Exception thrown as a result of concurrent modifications to an+-- application. This error can be the result of attempting to modify an+-- application without using the current application ID.+_ConcurrentModificationException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ConcurrentModificationException =+  Core._MatchServiceError+    defaultService+    "ConcurrentModificationException"++-- | The user-provided application configuration is not valid.+_InvalidApplicationConfigurationException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_InvalidApplicationConfigurationException =+  Core._MatchServiceError+    defaultService+    "InvalidApplicationConfigurationException"++-- | The specified input parameter value is not valid.+_InvalidArgumentException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_InvalidArgumentException =+  Core._MatchServiceError+    defaultService+    "InvalidArgumentException"++-- | The request JSON is not valid for the operation.+_InvalidRequestException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_InvalidRequestException =+  Core._MatchServiceError+    defaultService+    "InvalidRequestException"++-- | The number of allowed resources has been exceeded.+_LimitExceededException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_LimitExceededException =+  Core._MatchServiceError+    defaultService+    "LimitExceededException"++-- | The application is not available for this operation.+_ResourceInUseException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ResourceInUseException =+  Core._MatchServiceError+    defaultService+    "ResourceInUseException"++-- | Specified application can\'t be found.+_ResourceNotFoundException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ResourceNotFoundException =+  Core._MatchServiceError+    defaultService+    "ResourceNotFoundException"++-- | Discovery failed to get a record from the streaming source because of+-- the Kinesis Streams @ProvisionedThroughputExceededException@. For more+-- information, see+-- <http://docs.aws.amazon.com/kinesis/latest/APIReference/API_GetRecords.html GetRecords>+-- in the Amazon Kinesis Streams API Reference.+_ResourceProvisionedThroughputExceededException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ResourceProvisionedThroughputExceededException =+  Core._MatchServiceError+    defaultService+    "ResourceProvisionedThroughputExceededException"++-- | The service cannot complete the request.+_ServiceUnavailableException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ServiceUnavailableException =+  Core._MatchServiceError+    defaultService+    "ServiceUnavailableException"++-- | Application created with too many tags, or too many tags added to an+-- application. Note that the maximum number of application tags includes+-- system tags. The maximum number of user-defined application tags is 50.+_TooManyTagsException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_TooManyTagsException =+  Core._MatchServiceError+    defaultService+    "TooManyTagsException"++-- | The data format is not valid. Kinesis Data Analytics cannot detect the+-- schema for the given streaming source.+_UnableToDetectSchemaException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_UnableToDetectSchemaException =+  Core._MatchServiceError+    defaultService+    "UnableToDetectSchemaException"++-- | The request was rejected because a specified parameter is not supported+-- or a specified resource is not valid for this operation.+_UnsupportedOperationException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_UnsupportedOperationException =+  Core._MatchServiceError+    defaultService+    "UnsupportedOperationException"
+ gen/Amazonka/KinesisAnalyticsV2/Types/ApplicationCodeConfiguration.hs view
@@ -0,0 +1,92 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.KinesisAnalyticsV2.Types.ApplicationCodeConfiguration+-- 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.KinesisAnalyticsV2.Types.ApplicationCodeConfiguration where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types.CodeContent+import Amazonka.KinesisAnalyticsV2.Types.CodeContentType+import qualified Amazonka.Prelude as Prelude++-- | Describes code configuration for an application.+--+-- /See:/ 'newApplicationCodeConfiguration' smart constructor.+data ApplicationCodeConfiguration = ApplicationCodeConfiguration'+  { -- | The location and type of the application code.+    codeContent :: Prelude.Maybe CodeContent,+    -- | Specifies whether the code content is in text or zip format.+    codeContentType :: CodeContentType+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ApplicationCodeConfiguration' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'codeContent', 'applicationCodeConfiguration_codeContent' - The location and type of the application code.+--+-- 'codeContentType', 'applicationCodeConfiguration_codeContentType' - Specifies whether the code content is in text or zip format.+newApplicationCodeConfiguration ::+  -- | 'codeContentType'+  CodeContentType ->+  ApplicationCodeConfiguration+newApplicationCodeConfiguration pCodeContentType_ =+  ApplicationCodeConfiguration'+    { codeContent =+        Prelude.Nothing,+      codeContentType = pCodeContentType_+    }++-- | The location and type of the application code.+applicationCodeConfiguration_codeContent :: Lens.Lens' ApplicationCodeConfiguration (Prelude.Maybe CodeContent)+applicationCodeConfiguration_codeContent = Lens.lens (\ApplicationCodeConfiguration' {codeContent} -> codeContent) (\s@ApplicationCodeConfiguration' {} a -> s {codeContent = a} :: ApplicationCodeConfiguration)++-- | Specifies whether the code content is in text or zip format.+applicationCodeConfiguration_codeContentType :: Lens.Lens' ApplicationCodeConfiguration CodeContentType+applicationCodeConfiguration_codeContentType = Lens.lens (\ApplicationCodeConfiguration' {codeContentType} -> codeContentType) (\s@ApplicationCodeConfiguration' {} a -> s {codeContentType = a} :: ApplicationCodeConfiguration)++instance+  Prelude.Hashable+    ApplicationCodeConfiguration+  where+  hashWithSalt _salt ApplicationCodeConfiguration' {..} =+    _salt+      `Prelude.hashWithSalt` codeContent+      `Prelude.hashWithSalt` codeContentType++instance Prelude.NFData ApplicationCodeConfiguration where+  rnf ApplicationCodeConfiguration' {..} =+    Prelude.rnf codeContent+      `Prelude.seq` Prelude.rnf codeContentType++instance Data.ToJSON ApplicationCodeConfiguration where+  toJSON ApplicationCodeConfiguration' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("CodeContent" Data..=) Prelude.<$> codeContent,+            Prelude.Just+              ("CodeContentType" Data..= codeContentType)+          ]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/ApplicationCodeConfigurationDescription.hs view
@@ -0,0 +1,102 @@+{-# 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.KinesisAnalyticsV2.Types.ApplicationCodeConfigurationDescription+-- 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.KinesisAnalyticsV2.Types.ApplicationCodeConfigurationDescription where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types.CodeContentDescription+import Amazonka.KinesisAnalyticsV2.Types.CodeContentType+import qualified Amazonka.Prelude as Prelude++-- | Describes code configuration for an application.+--+-- /See:/ 'newApplicationCodeConfigurationDescription' smart constructor.+data ApplicationCodeConfigurationDescription = ApplicationCodeConfigurationDescription'+  { -- | Describes details about the location and format of the application code.+    codeContentDescription :: Prelude.Maybe CodeContentDescription,+    -- | Specifies whether the code content is in text or zip format.+    codeContentType :: CodeContentType+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ApplicationCodeConfigurationDescription' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'codeContentDescription', 'applicationCodeConfigurationDescription_codeContentDescription' - Describes details about the location and format of the application code.+--+-- 'codeContentType', 'applicationCodeConfigurationDescription_codeContentType' - Specifies whether the code content is in text or zip format.+newApplicationCodeConfigurationDescription ::+  -- | 'codeContentType'+  CodeContentType ->+  ApplicationCodeConfigurationDescription+newApplicationCodeConfigurationDescription+  pCodeContentType_ =+    ApplicationCodeConfigurationDescription'+      { codeContentDescription =+          Prelude.Nothing,+        codeContentType =+          pCodeContentType_+      }++-- | Describes details about the location and format of the application code.+applicationCodeConfigurationDescription_codeContentDescription :: Lens.Lens' ApplicationCodeConfigurationDescription (Prelude.Maybe CodeContentDescription)+applicationCodeConfigurationDescription_codeContentDescription = Lens.lens (\ApplicationCodeConfigurationDescription' {codeContentDescription} -> codeContentDescription) (\s@ApplicationCodeConfigurationDescription' {} a -> s {codeContentDescription = a} :: ApplicationCodeConfigurationDescription)++-- | Specifies whether the code content is in text or zip format.+applicationCodeConfigurationDescription_codeContentType :: Lens.Lens' ApplicationCodeConfigurationDescription CodeContentType+applicationCodeConfigurationDescription_codeContentType = Lens.lens (\ApplicationCodeConfigurationDescription' {codeContentType} -> codeContentType) (\s@ApplicationCodeConfigurationDescription' {} a -> s {codeContentType = a} :: ApplicationCodeConfigurationDescription)++instance+  Data.FromJSON+    ApplicationCodeConfigurationDescription+  where+  parseJSON =+    Data.withObject+      "ApplicationCodeConfigurationDescription"+      ( \x ->+          ApplicationCodeConfigurationDescription'+            Prelude.<$> (x Data..:? "CodeContentDescription")+            Prelude.<*> (x Data..: "CodeContentType")+      )++instance+  Prelude.Hashable+    ApplicationCodeConfigurationDescription+  where+  hashWithSalt+    _salt+    ApplicationCodeConfigurationDescription' {..} =+      _salt+        `Prelude.hashWithSalt` codeContentDescription+        `Prelude.hashWithSalt` codeContentType++instance+  Prelude.NFData+    ApplicationCodeConfigurationDescription+  where+  rnf ApplicationCodeConfigurationDescription' {..} =+    Prelude.rnf codeContentDescription+      `Prelude.seq` Prelude.rnf codeContentType
+ gen/Amazonka/KinesisAnalyticsV2/Types/ApplicationCodeConfigurationUpdate.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.KinesisAnalyticsV2.Types.ApplicationCodeConfigurationUpdate+-- 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.KinesisAnalyticsV2.Types.ApplicationCodeConfigurationUpdate where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types.CodeContentType+import Amazonka.KinesisAnalyticsV2.Types.CodeContentUpdate+import qualified Amazonka.Prelude as Prelude++-- | Describes code configuration updates for an application. This is+-- supported for a Flink-based Kinesis Data Analytics application or a+-- SQL-based Kinesis Data Analytics application.+--+-- /See:/ 'newApplicationCodeConfigurationUpdate' smart constructor.+data ApplicationCodeConfigurationUpdate = ApplicationCodeConfigurationUpdate'+  { -- | Describes updates to the code content type.+    codeContentTypeUpdate :: Prelude.Maybe CodeContentType,+    -- | Describes updates to the code content of an application.+    codeContentUpdate :: Prelude.Maybe CodeContentUpdate+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ApplicationCodeConfigurationUpdate' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'codeContentTypeUpdate', 'applicationCodeConfigurationUpdate_codeContentTypeUpdate' - Describes updates to the code content type.+--+-- 'codeContentUpdate', 'applicationCodeConfigurationUpdate_codeContentUpdate' - Describes updates to the code content of an application.+newApplicationCodeConfigurationUpdate ::+  ApplicationCodeConfigurationUpdate+newApplicationCodeConfigurationUpdate =+  ApplicationCodeConfigurationUpdate'+    { codeContentTypeUpdate =+        Prelude.Nothing,+      codeContentUpdate = Prelude.Nothing+    }++-- | Describes updates to the code content type.+applicationCodeConfigurationUpdate_codeContentTypeUpdate :: Lens.Lens' ApplicationCodeConfigurationUpdate (Prelude.Maybe CodeContentType)+applicationCodeConfigurationUpdate_codeContentTypeUpdate = Lens.lens (\ApplicationCodeConfigurationUpdate' {codeContentTypeUpdate} -> codeContentTypeUpdate) (\s@ApplicationCodeConfigurationUpdate' {} a -> s {codeContentTypeUpdate = a} :: ApplicationCodeConfigurationUpdate)++-- | Describes updates to the code content of an application.+applicationCodeConfigurationUpdate_codeContentUpdate :: Lens.Lens' ApplicationCodeConfigurationUpdate (Prelude.Maybe CodeContentUpdate)+applicationCodeConfigurationUpdate_codeContentUpdate = Lens.lens (\ApplicationCodeConfigurationUpdate' {codeContentUpdate} -> codeContentUpdate) (\s@ApplicationCodeConfigurationUpdate' {} a -> s {codeContentUpdate = a} :: ApplicationCodeConfigurationUpdate)++instance+  Prelude.Hashable+    ApplicationCodeConfigurationUpdate+  where+  hashWithSalt+    _salt+    ApplicationCodeConfigurationUpdate' {..} =+      _salt+        `Prelude.hashWithSalt` codeContentTypeUpdate+        `Prelude.hashWithSalt` codeContentUpdate++instance+  Prelude.NFData+    ApplicationCodeConfigurationUpdate+  where+  rnf ApplicationCodeConfigurationUpdate' {..} =+    Prelude.rnf codeContentTypeUpdate+      `Prelude.seq` Prelude.rnf codeContentUpdate++instance+  Data.ToJSON+    ApplicationCodeConfigurationUpdate+  where+  toJSON ApplicationCodeConfigurationUpdate' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("CodeContentTypeUpdate" Data..=)+              Prelude.<$> codeContentTypeUpdate,+            ("CodeContentUpdate" Data..=)+              Prelude.<$> codeContentUpdate+          ]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/ApplicationConfiguration.hs view
@@ -0,0 +1,182 @@+{-# 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.KinesisAnalyticsV2.Types.ApplicationConfiguration+-- 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.KinesisAnalyticsV2.Types.ApplicationConfiguration where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types.ApplicationCodeConfiguration+import Amazonka.KinesisAnalyticsV2.Types.ApplicationSnapshotConfiguration+import Amazonka.KinesisAnalyticsV2.Types.EnvironmentProperties+import Amazonka.KinesisAnalyticsV2.Types.FlinkApplicationConfiguration+import Amazonka.KinesisAnalyticsV2.Types.SqlApplicationConfiguration+import Amazonka.KinesisAnalyticsV2.Types.VpcConfiguration+import Amazonka.KinesisAnalyticsV2.Types.ZeppelinApplicationConfiguration+import qualified Amazonka.Prelude as Prelude++-- | Specifies the creation parameters for a Kinesis Data Analytics+-- application.+--+-- /See:/ 'newApplicationConfiguration' smart constructor.+data ApplicationConfiguration = ApplicationConfiguration'+  { -- | The code location and type parameters for a Flink-based Kinesis Data+    -- Analytics application.+    applicationCodeConfiguration :: Prelude.Maybe ApplicationCodeConfiguration,+    -- | Describes whether snapshots are enabled for a Flink-based Kinesis Data+    -- Analytics application.+    applicationSnapshotConfiguration :: Prelude.Maybe ApplicationSnapshotConfiguration,+    -- | Describes execution properties for a Flink-based Kinesis Data Analytics+    -- application.+    environmentProperties :: Prelude.Maybe EnvironmentProperties,+    -- | The creation and update parameters for a Flink-based Kinesis Data+    -- Analytics application.+    flinkApplicationConfiguration :: Prelude.Maybe FlinkApplicationConfiguration,+    -- | The creation and update parameters for a SQL-based Kinesis Data+    -- Analytics application.+    sqlApplicationConfiguration :: Prelude.Maybe SqlApplicationConfiguration,+    -- | The array of descriptions of VPC configurations available to the+    -- application.+    vpcConfigurations :: Prelude.Maybe [VpcConfiguration],+    -- | The configuration parameters for a Kinesis Data Analytics Studio+    -- notebook.+    zeppelinApplicationConfiguration :: Prelude.Maybe ZeppelinApplicationConfiguration+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ApplicationConfiguration' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applicationCodeConfiguration', 'applicationConfiguration_applicationCodeConfiguration' - The code location and type parameters for a Flink-based Kinesis Data+-- Analytics application.+--+-- 'applicationSnapshotConfiguration', 'applicationConfiguration_applicationSnapshotConfiguration' - Describes whether snapshots are enabled for a Flink-based Kinesis Data+-- Analytics application.+--+-- 'environmentProperties', 'applicationConfiguration_environmentProperties' - Describes execution properties for a Flink-based Kinesis Data Analytics+-- application.+--+-- 'flinkApplicationConfiguration', 'applicationConfiguration_flinkApplicationConfiguration' - The creation and update parameters for a Flink-based Kinesis Data+-- Analytics application.+--+-- 'sqlApplicationConfiguration', 'applicationConfiguration_sqlApplicationConfiguration' - The creation and update parameters for a SQL-based Kinesis Data+-- Analytics application.+--+-- 'vpcConfigurations', 'applicationConfiguration_vpcConfigurations' - The array of descriptions of VPC configurations available to the+-- application.+--+-- 'zeppelinApplicationConfiguration', 'applicationConfiguration_zeppelinApplicationConfiguration' - The configuration parameters for a Kinesis Data Analytics Studio+-- notebook.+newApplicationConfiguration ::+  ApplicationConfiguration+newApplicationConfiguration =+  ApplicationConfiguration'+    { applicationCodeConfiguration =+        Prelude.Nothing,+      applicationSnapshotConfiguration =+        Prelude.Nothing,+      environmentProperties = Prelude.Nothing,+      flinkApplicationConfiguration = Prelude.Nothing,+      sqlApplicationConfiguration = Prelude.Nothing,+      vpcConfigurations = Prelude.Nothing,+      zeppelinApplicationConfiguration =+        Prelude.Nothing+    }++-- | The code location and type parameters for a Flink-based Kinesis Data+-- Analytics application.+applicationConfiguration_applicationCodeConfiguration :: Lens.Lens' ApplicationConfiguration (Prelude.Maybe ApplicationCodeConfiguration)+applicationConfiguration_applicationCodeConfiguration = Lens.lens (\ApplicationConfiguration' {applicationCodeConfiguration} -> applicationCodeConfiguration) (\s@ApplicationConfiguration' {} a -> s {applicationCodeConfiguration = a} :: ApplicationConfiguration)++-- | Describes whether snapshots are enabled for a Flink-based Kinesis Data+-- Analytics application.+applicationConfiguration_applicationSnapshotConfiguration :: Lens.Lens' ApplicationConfiguration (Prelude.Maybe ApplicationSnapshotConfiguration)+applicationConfiguration_applicationSnapshotConfiguration = Lens.lens (\ApplicationConfiguration' {applicationSnapshotConfiguration} -> applicationSnapshotConfiguration) (\s@ApplicationConfiguration' {} a -> s {applicationSnapshotConfiguration = a} :: ApplicationConfiguration)++-- | Describes execution properties for a Flink-based Kinesis Data Analytics+-- application.+applicationConfiguration_environmentProperties :: Lens.Lens' ApplicationConfiguration (Prelude.Maybe EnvironmentProperties)+applicationConfiguration_environmentProperties = Lens.lens (\ApplicationConfiguration' {environmentProperties} -> environmentProperties) (\s@ApplicationConfiguration' {} a -> s {environmentProperties = a} :: ApplicationConfiguration)++-- | The creation and update parameters for a Flink-based Kinesis Data+-- Analytics application.+applicationConfiguration_flinkApplicationConfiguration :: Lens.Lens' ApplicationConfiguration (Prelude.Maybe FlinkApplicationConfiguration)+applicationConfiguration_flinkApplicationConfiguration = Lens.lens (\ApplicationConfiguration' {flinkApplicationConfiguration} -> flinkApplicationConfiguration) (\s@ApplicationConfiguration' {} a -> s {flinkApplicationConfiguration = a} :: ApplicationConfiguration)++-- | The creation and update parameters for a SQL-based Kinesis Data+-- Analytics application.+applicationConfiguration_sqlApplicationConfiguration :: Lens.Lens' ApplicationConfiguration (Prelude.Maybe SqlApplicationConfiguration)+applicationConfiguration_sqlApplicationConfiguration = Lens.lens (\ApplicationConfiguration' {sqlApplicationConfiguration} -> sqlApplicationConfiguration) (\s@ApplicationConfiguration' {} a -> s {sqlApplicationConfiguration = a} :: ApplicationConfiguration)++-- | The array of descriptions of VPC configurations available to the+-- application.+applicationConfiguration_vpcConfigurations :: Lens.Lens' ApplicationConfiguration (Prelude.Maybe [VpcConfiguration])+applicationConfiguration_vpcConfigurations = Lens.lens (\ApplicationConfiguration' {vpcConfigurations} -> vpcConfigurations) (\s@ApplicationConfiguration' {} a -> s {vpcConfigurations = a} :: ApplicationConfiguration) Prelude.. Lens.mapping Lens.coerced++-- | The configuration parameters for a Kinesis Data Analytics Studio+-- notebook.+applicationConfiguration_zeppelinApplicationConfiguration :: Lens.Lens' ApplicationConfiguration (Prelude.Maybe ZeppelinApplicationConfiguration)+applicationConfiguration_zeppelinApplicationConfiguration = Lens.lens (\ApplicationConfiguration' {zeppelinApplicationConfiguration} -> zeppelinApplicationConfiguration) (\s@ApplicationConfiguration' {} a -> s {zeppelinApplicationConfiguration = a} :: ApplicationConfiguration)++instance Prelude.Hashable ApplicationConfiguration where+  hashWithSalt _salt ApplicationConfiguration' {..} =+    _salt+      `Prelude.hashWithSalt` applicationCodeConfiguration+      `Prelude.hashWithSalt` applicationSnapshotConfiguration+      `Prelude.hashWithSalt` environmentProperties+      `Prelude.hashWithSalt` flinkApplicationConfiguration+      `Prelude.hashWithSalt` sqlApplicationConfiguration+      `Prelude.hashWithSalt` vpcConfigurations+      `Prelude.hashWithSalt` zeppelinApplicationConfiguration++instance Prelude.NFData ApplicationConfiguration where+  rnf ApplicationConfiguration' {..} =+    Prelude.rnf applicationCodeConfiguration+      `Prelude.seq` Prelude.rnf applicationSnapshotConfiguration+      `Prelude.seq` Prelude.rnf environmentProperties+      `Prelude.seq` Prelude.rnf flinkApplicationConfiguration+      `Prelude.seq` Prelude.rnf sqlApplicationConfiguration+      `Prelude.seq` Prelude.rnf vpcConfigurations+      `Prelude.seq` Prelude.rnf zeppelinApplicationConfiguration++instance Data.ToJSON ApplicationConfiguration where+  toJSON ApplicationConfiguration' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("ApplicationCodeConfiguration" Data..=)+              Prelude.<$> applicationCodeConfiguration,+            ("ApplicationSnapshotConfiguration" Data..=)+              Prelude.<$> applicationSnapshotConfiguration,+            ("EnvironmentProperties" Data..=)+              Prelude.<$> environmentProperties,+            ("FlinkApplicationConfiguration" Data..=)+              Prelude.<$> flinkApplicationConfiguration,+            ("SqlApplicationConfiguration" Data..=)+              Prelude.<$> sqlApplicationConfiguration,+            ("VpcConfigurations" Data..=)+              Prelude.<$> vpcConfigurations,+            ("ZeppelinApplicationConfiguration" Data..=)+              Prelude.<$> zeppelinApplicationConfiguration+          ]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/ApplicationConfigurationDescription.hs view
@@ -0,0 +1,218 @@+{-# 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.KinesisAnalyticsV2.Types.ApplicationConfigurationDescription+-- 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.KinesisAnalyticsV2.Types.ApplicationConfigurationDescription where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types.ApplicationCodeConfigurationDescription+import Amazonka.KinesisAnalyticsV2.Types.ApplicationSnapshotConfigurationDescription+import Amazonka.KinesisAnalyticsV2.Types.EnvironmentPropertyDescriptions+import Amazonka.KinesisAnalyticsV2.Types.FlinkApplicationConfigurationDescription+import Amazonka.KinesisAnalyticsV2.Types.RunConfigurationDescription+import Amazonka.KinesisAnalyticsV2.Types.SqlApplicationConfigurationDescription+import Amazonka.KinesisAnalyticsV2.Types.VpcConfigurationDescription+import Amazonka.KinesisAnalyticsV2.Types.ZeppelinApplicationConfigurationDescription+import qualified Amazonka.Prelude as Prelude++-- | Describes details about the application code and starting parameters for+-- a Kinesis Data Analytics application.+--+-- /See:/ 'newApplicationConfigurationDescription' smart constructor.+data ApplicationConfigurationDescription = ApplicationConfigurationDescription'+  { -- | The details about the application code for a Flink-based Kinesis Data+    -- Analytics application.+    applicationCodeConfigurationDescription :: Prelude.Maybe ApplicationCodeConfigurationDescription,+    -- | Describes whether snapshots are enabled for a Flink-based Kinesis Data+    -- Analytics application.+    applicationSnapshotConfigurationDescription :: Prelude.Maybe ApplicationSnapshotConfigurationDescription,+    -- | Describes execution properties for a Flink-based Kinesis Data Analytics+    -- application.+    environmentPropertyDescriptions :: Prelude.Maybe EnvironmentPropertyDescriptions,+    -- | The details about a Flink-based Kinesis Data Analytics application.+    flinkApplicationConfigurationDescription :: Prelude.Maybe FlinkApplicationConfigurationDescription,+    -- | The details about the starting properties for a Kinesis Data Analytics+    -- application.+    runConfigurationDescription :: Prelude.Maybe RunConfigurationDescription,+    -- | The details about inputs, outputs, and reference data sources for a+    -- SQL-based Kinesis Data Analytics application.+    sqlApplicationConfigurationDescription :: Prelude.Maybe SqlApplicationConfigurationDescription,+    -- | The array of descriptions of VPC configurations available to the+    -- application.+    vpcConfigurationDescriptions :: Prelude.Maybe [VpcConfigurationDescription],+    -- | The configuration parameters for a Kinesis Data Analytics Studio+    -- notebook.+    zeppelinApplicationConfigurationDescription :: Prelude.Maybe ZeppelinApplicationConfigurationDescription+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ApplicationConfigurationDescription' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applicationCodeConfigurationDescription', 'applicationConfigurationDescription_applicationCodeConfigurationDescription' - The details about the application code for a Flink-based Kinesis Data+-- Analytics application.+--+-- 'applicationSnapshotConfigurationDescription', 'applicationConfigurationDescription_applicationSnapshotConfigurationDescription' - Describes whether snapshots are enabled for a Flink-based Kinesis Data+-- Analytics application.+--+-- 'environmentPropertyDescriptions', 'applicationConfigurationDescription_environmentPropertyDescriptions' - Describes execution properties for a Flink-based Kinesis Data Analytics+-- application.+--+-- 'flinkApplicationConfigurationDescription', 'applicationConfigurationDescription_flinkApplicationConfigurationDescription' - The details about a Flink-based Kinesis Data Analytics application.+--+-- 'runConfigurationDescription', 'applicationConfigurationDescription_runConfigurationDescription' - The details about the starting properties for a Kinesis Data Analytics+-- application.+--+-- 'sqlApplicationConfigurationDescription', 'applicationConfigurationDescription_sqlApplicationConfigurationDescription' - The details about inputs, outputs, and reference data sources for a+-- SQL-based Kinesis Data Analytics application.+--+-- 'vpcConfigurationDescriptions', 'applicationConfigurationDescription_vpcConfigurationDescriptions' - The array of descriptions of VPC configurations available to the+-- application.+--+-- 'zeppelinApplicationConfigurationDescription', 'applicationConfigurationDescription_zeppelinApplicationConfigurationDescription' - The configuration parameters for a Kinesis Data Analytics Studio+-- notebook.+newApplicationConfigurationDescription ::+  ApplicationConfigurationDescription+newApplicationConfigurationDescription =+  ApplicationConfigurationDescription'+    { applicationCodeConfigurationDescription =+        Prelude.Nothing,+      applicationSnapshotConfigurationDescription =+        Prelude.Nothing,+      environmentPropertyDescriptions =+        Prelude.Nothing,+      flinkApplicationConfigurationDescription =+        Prelude.Nothing,+      runConfigurationDescription =+        Prelude.Nothing,+      sqlApplicationConfigurationDescription =+        Prelude.Nothing,+      vpcConfigurationDescriptions =+        Prelude.Nothing,+      zeppelinApplicationConfigurationDescription =+        Prelude.Nothing+    }++-- | The details about the application code for a Flink-based Kinesis Data+-- Analytics application.+applicationConfigurationDescription_applicationCodeConfigurationDescription :: Lens.Lens' ApplicationConfigurationDescription (Prelude.Maybe ApplicationCodeConfigurationDescription)+applicationConfigurationDescription_applicationCodeConfigurationDescription = Lens.lens (\ApplicationConfigurationDescription' {applicationCodeConfigurationDescription} -> applicationCodeConfigurationDescription) (\s@ApplicationConfigurationDescription' {} a -> s {applicationCodeConfigurationDescription = a} :: ApplicationConfigurationDescription)++-- | Describes whether snapshots are enabled for a Flink-based Kinesis Data+-- Analytics application.+applicationConfigurationDescription_applicationSnapshotConfigurationDescription :: Lens.Lens' ApplicationConfigurationDescription (Prelude.Maybe ApplicationSnapshotConfigurationDescription)+applicationConfigurationDescription_applicationSnapshotConfigurationDescription = Lens.lens (\ApplicationConfigurationDescription' {applicationSnapshotConfigurationDescription} -> applicationSnapshotConfigurationDescription) (\s@ApplicationConfigurationDescription' {} a -> s {applicationSnapshotConfigurationDescription = a} :: ApplicationConfigurationDescription)++-- | Describes execution properties for a Flink-based Kinesis Data Analytics+-- application.+applicationConfigurationDescription_environmentPropertyDescriptions :: Lens.Lens' ApplicationConfigurationDescription (Prelude.Maybe EnvironmentPropertyDescriptions)+applicationConfigurationDescription_environmentPropertyDescriptions = Lens.lens (\ApplicationConfigurationDescription' {environmentPropertyDescriptions} -> environmentPropertyDescriptions) (\s@ApplicationConfigurationDescription' {} a -> s {environmentPropertyDescriptions = a} :: ApplicationConfigurationDescription)++-- | The details about a Flink-based Kinesis Data Analytics application.+applicationConfigurationDescription_flinkApplicationConfigurationDescription :: Lens.Lens' ApplicationConfigurationDescription (Prelude.Maybe FlinkApplicationConfigurationDescription)+applicationConfigurationDescription_flinkApplicationConfigurationDescription = Lens.lens (\ApplicationConfigurationDescription' {flinkApplicationConfigurationDescription} -> flinkApplicationConfigurationDescription) (\s@ApplicationConfigurationDescription' {} a -> s {flinkApplicationConfigurationDescription = a} :: ApplicationConfigurationDescription)++-- | The details about the starting properties for a Kinesis Data Analytics+-- application.+applicationConfigurationDescription_runConfigurationDescription :: Lens.Lens' ApplicationConfigurationDescription (Prelude.Maybe RunConfigurationDescription)+applicationConfigurationDescription_runConfigurationDescription = Lens.lens (\ApplicationConfigurationDescription' {runConfigurationDescription} -> runConfigurationDescription) (\s@ApplicationConfigurationDescription' {} a -> s {runConfigurationDescription = a} :: ApplicationConfigurationDescription)++-- | The details about inputs, outputs, and reference data sources for a+-- SQL-based Kinesis Data Analytics application.+applicationConfigurationDescription_sqlApplicationConfigurationDescription :: Lens.Lens' ApplicationConfigurationDescription (Prelude.Maybe SqlApplicationConfigurationDescription)+applicationConfigurationDescription_sqlApplicationConfigurationDescription = Lens.lens (\ApplicationConfigurationDescription' {sqlApplicationConfigurationDescription} -> sqlApplicationConfigurationDescription) (\s@ApplicationConfigurationDescription' {} a -> s {sqlApplicationConfigurationDescription = a} :: ApplicationConfigurationDescription)++-- | The array of descriptions of VPC configurations available to the+-- application.+applicationConfigurationDescription_vpcConfigurationDescriptions :: Lens.Lens' ApplicationConfigurationDescription (Prelude.Maybe [VpcConfigurationDescription])+applicationConfigurationDescription_vpcConfigurationDescriptions = Lens.lens (\ApplicationConfigurationDescription' {vpcConfigurationDescriptions} -> vpcConfigurationDescriptions) (\s@ApplicationConfigurationDescription' {} a -> s {vpcConfigurationDescriptions = a} :: ApplicationConfigurationDescription) Prelude.. Lens.mapping Lens.coerced++-- | The configuration parameters for a Kinesis Data Analytics Studio+-- notebook.+applicationConfigurationDescription_zeppelinApplicationConfigurationDescription :: Lens.Lens' ApplicationConfigurationDescription (Prelude.Maybe ZeppelinApplicationConfigurationDescription)+applicationConfigurationDescription_zeppelinApplicationConfigurationDescription = Lens.lens (\ApplicationConfigurationDescription' {zeppelinApplicationConfigurationDescription} -> zeppelinApplicationConfigurationDescription) (\s@ApplicationConfigurationDescription' {} a -> s {zeppelinApplicationConfigurationDescription = a} :: ApplicationConfigurationDescription)++instance+  Data.FromJSON+    ApplicationConfigurationDescription+  where+  parseJSON =+    Data.withObject+      "ApplicationConfigurationDescription"+      ( \x ->+          ApplicationConfigurationDescription'+            Prelude.<$> ( x+                            Data..:? "ApplicationCodeConfigurationDescription"+                        )+            Prelude.<*> ( x+                            Data..:? "ApplicationSnapshotConfigurationDescription"+                        )+            Prelude.<*> (x Data..:? "EnvironmentPropertyDescriptions")+            Prelude.<*> ( x+                            Data..:? "FlinkApplicationConfigurationDescription"+                        )+            Prelude.<*> (x Data..:? "RunConfigurationDescription")+            Prelude.<*> (x Data..:? "SqlApplicationConfigurationDescription")+            Prelude.<*> ( x+                            Data..:? "VpcConfigurationDescriptions"+                            Data..!= Prelude.mempty+                        )+            Prelude.<*> ( x+                            Data..:? "ZeppelinApplicationConfigurationDescription"+                        )+      )++instance+  Prelude.Hashable+    ApplicationConfigurationDescription+  where+  hashWithSalt+    _salt+    ApplicationConfigurationDescription' {..} =+      _salt+        `Prelude.hashWithSalt` applicationCodeConfigurationDescription+        `Prelude.hashWithSalt` applicationSnapshotConfigurationDescription+        `Prelude.hashWithSalt` environmentPropertyDescriptions+        `Prelude.hashWithSalt` flinkApplicationConfigurationDescription+        `Prelude.hashWithSalt` runConfigurationDescription+        `Prelude.hashWithSalt` sqlApplicationConfigurationDescription+        `Prelude.hashWithSalt` vpcConfigurationDescriptions+        `Prelude.hashWithSalt` zeppelinApplicationConfigurationDescription++instance+  Prelude.NFData+    ApplicationConfigurationDescription+  where+  rnf ApplicationConfigurationDescription' {..} =+    Prelude.rnf applicationCodeConfigurationDescription+      `Prelude.seq` Prelude.rnf+        applicationSnapshotConfigurationDescription+      `Prelude.seq` Prelude.rnf environmentPropertyDescriptions+      `Prelude.seq` Prelude.rnf flinkApplicationConfigurationDescription+      `Prelude.seq` Prelude.rnf runConfigurationDescription+      `Prelude.seq` Prelude.rnf sqlApplicationConfigurationDescription+      `Prelude.seq` Prelude.rnf vpcConfigurationDescriptions+      `Prelude.seq` Prelude.rnf+        zeppelinApplicationConfigurationDescription
+ gen/Amazonka/KinesisAnalyticsV2/Types/ApplicationConfigurationUpdate.hs view
@@ -0,0 +1,189 @@+{-# 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.KinesisAnalyticsV2.Types.ApplicationConfigurationUpdate+-- 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.KinesisAnalyticsV2.Types.ApplicationConfigurationUpdate where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types.ApplicationCodeConfigurationUpdate+import Amazonka.KinesisAnalyticsV2.Types.ApplicationSnapshotConfigurationUpdate+import Amazonka.KinesisAnalyticsV2.Types.EnvironmentPropertyUpdates+import Amazonka.KinesisAnalyticsV2.Types.FlinkApplicationConfigurationUpdate+import Amazonka.KinesisAnalyticsV2.Types.SqlApplicationConfigurationUpdate+import Amazonka.KinesisAnalyticsV2.Types.VpcConfigurationUpdate+import Amazonka.KinesisAnalyticsV2.Types.ZeppelinApplicationConfigurationUpdate+import qualified Amazonka.Prelude as Prelude++-- | Describes updates to an application\'s configuration.+--+-- /See:/ 'newApplicationConfigurationUpdate' smart constructor.+data ApplicationConfigurationUpdate = ApplicationConfigurationUpdate'+  { -- | Describes updates to an application\'s code configuration.+    applicationCodeConfigurationUpdate :: Prelude.Maybe ApplicationCodeConfigurationUpdate,+    -- | Describes whether snapshots are enabled for a Flink-based Kinesis Data+    -- Analytics application.+    applicationSnapshotConfigurationUpdate :: Prelude.Maybe ApplicationSnapshotConfigurationUpdate,+    -- | Describes updates to the environment properties for a Flink-based+    -- Kinesis Data Analytics application.+    environmentPropertyUpdates :: Prelude.Maybe EnvironmentPropertyUpdates,+    -- | Describes updates to a Flink-based Kinesis Data Analytics application\'s+    -- configuration.+    flinkApplicationConfigurationUpdate :: Prelude.Maybe FlinkApplicationConfigurationUpdate,+    -- | Describes updates to a SQL-based Kinesis Data Analytics application\'s+    -- configuration.+    sqlApplicationConfigurationUpdate :: Prelude.Maybe SqlApplicationConfigurationUpdate,+    -- | Updates to the array of descriptions of VPC configurations available to+    -- the application.+    vpcConfigurationUpdates :: Prelude.Maybe [VpcConfigurationUpdate],+    -- | Updates to the configuration of a Kinesis Data Analytics Studio+    -- notebook.+    zeppelinApplicationConfigurationUpdate :: Prelude.Maybe ZeppelinApplicationConfigurationUpdate+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ApplicationConfigurationUpdate' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applicationCodeConfigurationUpdate', 'applicationConfigurationUpdate_applicationCodeConfigurationUpdate' - Describes updates to an application\'s code configuration.+--+-- 'applicationSnapshotConfigurationUpdate', 'applicationConfigurationUpdate_applicationSnapshotConfigurationUpdate' - Describes whether snapshots are enabled for a Flink-based Kinesis Data+-- Analytics application.+--+-- 'environmentPropertyUpdates', 'applicationConfigurationUpdate_environmentPropertyUpdates' - Describes updates to the environment properties for a Flink-based+-- Kinesis Data Analytics application.+--+-- 'flinkApplicationConfigurationUpdate', 'applicationConfigurationUpdate_flinkApplicationConfigurationUpdate' - Describes updates to a Flink-based Kinesis Data Analytics application\'s+-- configuration.+--+-- 'sqlApplicationConfigurationUpdate', 'applicationConfigurationUpdate_sqlApplicationConfigurationUpdate' - Describes updates to a SQL-based Kinesis Data Analytics application\'s+-- configuration.+--+-- 'vpcConfigurationUpdates', 'applicationConfigurationUpdate_vpcConfigurationUpdates' - Updates to the array of descriptions of VPC configurations available to+-- the application.+--+-- 'zeppelinApplicationConfigurationUpdate', 'applicationConfigurationUpdate_zeppelinApplicationConfigurationUpdate' - Updates to the configuration of a Kinesis Data Analytics Studio+-- notebook.+newApplicationConfigurationUpdate ::+  ApplicationConfigurationUpdate+newApplicationConfigurationUpdate =+  ApplicationConfigurationUpdate'+    { applicationCodeConfigurationUpdate =+        Prelude.Nothing,+      applicationSnapshotConfigurationUpdate =+        Prelude.Nothing,+      environmentPropertyUpdates =+        Prelude.Nothing,+      flinkApplicationConfigurationUpdate =+        Prelude.Nothing,+      sqlApplicationConfigurationUpdate =+        Prelude.Nothing,+      vpcConfigurationUpdates = Prelude.Nothing,+      zeppelinApplicationConfigurationUpdate =+        Prelude.Nothing+    }++-- | Describes updates to an application\'s code configuration.+applicationConfigurationUpdate_applicationCodeConfigurationUpdate :: Lens.Lens' ApplicationConfigurationUpdate (Prelude.Maybe ApplicationCodeConfigurationUpdate)+applicationConfigurationUpdate_applicationCodeConfigurationUpdate = Lens.lens (\ApplicationConfigurationUpdate' {applicationCodeConfigurationUpdate} -> applicationCodeConfigurationUpdate) (\s@ApplicationConfigurationUpdate' {} a -> s {applicationCodeConfigurationUpdate = a} :: ApplicationConfigurationUpdate)++-- | Describes whether snapshots are enabled for a Flink-based Kinesis Data+-- Analytics application.+applicationConfigurationUpdate_applicationSnapshotConfigurationUpdate :: Lens.Lens' ApplicationConfigurationUpdate (Prelude.Maybe ApplicationSnapshotConfigurationUpdate)+applicationConfigurationUpdate_applicationSnapshotConfigurationUpdate = Lens.lens (\ApplicationConfigurationUpdate' {applicationSnapshotConfigurationUpdate} -> applicationSnapshotConfigurationUpdate) (\s@ApplicationConfigurationUpdate' {} a -> s {applicationSnapshotConfigurationUpdate = a} :: ApplicationConfigurationUpdate)++-- | Describes updates to the environment properties for a Flink-based+-- Kinesis Data Analytics application.+applicationConfigurationUpdate_environmentPropertyUpdates :: Lens.Lens' ApplicationConfigurationUpdate (Prelude.Maybe EnvironmentPropertyUpdates)+applicationConfigurationUpdate_environmentPropertyUpdates = Lens.lens (\ApplicationConfigurationUpdate' {environmentPropertyUpdates} -> environmentPropertyUpdates) (\s@ApplicationConfigurationUpdate' {} a -> s {environmentPropertyUpdates = a} :: ApplicationConfigurationUpdate)++-- | Describes updates to a Flink-based Kinesis Data Analytics application\'s+-- configuration.+applicationConfigurationUpdate_flinkApplicationConfigurationUpdate :: Lens.Lens' ApplicationConfigurationUpdate (Prelude.Maybe FlinkApplicationConfigurationUpdate)+applicationConfigurationUpdate_flinkApplicationConfigurationUpdate = Lens.lens (\ApplicationConfigurationUpdate' {flinkApplicationConfigurationUpdate} -> flinkApplicationConfigurationUpdate) (\s@ApplicationConfigurationUpdate' {} a -> s {flinkApplicationConfigurationUpdate = a} :: ApplicationConfigurationUpdate)++-- | Describes updates to a SQL-based Kinesis Data Analytics application\'s+-- configuration.+applicationConfigurationUpdate_sqlApplicationConfigurationUpdate :: Lens.Lens' ApplicationConfigurationUpdate (Prelude.Maybe SqlApplicationConfigurationUpdate)+applicationConfigurationUpdate_sqlApplicationConfigurationUpdate = Lens.lens (\ApplicationConfigurationUpdate' {sqlApplicationConfigurationUpdate} -> sqlApplicationConfigurationUpdate) (\s@ApplicationConfigurationUpdate' {} a -> s {sqlApplicationConfigurationUpdate = a} :: ApplicationConfigurationUpdate)++-- | Updates to the array of descriptions of VPC configurations available to+-- the application.+applicationConfigurationUpdate_vpcConfigurationUpdates :: Lens.Lens' ApplicationConfigurationUpdate (Prelude.Maybe [VpcConfigurationUpdate])+applicationConfigurationUpdate_vpcConfigurationUpdates = Lens.lens (\ApplicationConfigurationUpdate' {vpcConfigurationUpdates} -> vpcConfigurationUpdates) (\s@ApplicationConfigurationUpdate' {} a -> s {vpcConfigurationUpdates = a} :: ApplicationConfigurationUpdate) Prelude.. Lens.mapping Lens.coerced++-- | Updates to the configuration of a Kinesis Data Analytics Studio+-- notebook.+applicationConfigurationUpdate_zeppelinApplicationConfigurationUpdate :: Lens.Lens' ApplicationConfigurationUpdate (Prelude.Maybe ZeppelinApplicationConfigurationUpdate)+applicationConfigurationUpdate_zeppelinApplicationConfigurationUpdate = Lens.lens (\ApplicationConfigurationUpdate' {zeppelinApplicationConfigurationUpdate} -> zeppelinApplicationConfigurationUpdate) (\s@ApplicationConfigurationUpdate' {} a -> s {zeppelinApplicationConfigurationUpdate = a} :: ApplicationConfigurationUpdate)++instance+  Prelude.Hashable+    ApplicationConfigurationUpdate+  where+  hashWithSalt+    _salt+    ApplicationConfigurationUpdate' {..} =+      _salt+        `Prelude.hashWithSalt` applicationCodeConfigurationUpdate+        `Prelude.hashWithSalt` applicationSnapshotConfigurationUpdate+        `Prelude.hashWithSalt` environmentPropertyUpdates+        `Prelude.hashWithSalt` flinkApplicationConfigurationUpdate+        `Prelude.hashWithSalt` sqlApplicationConfigurationUpdate+        `Prelude.hashWithSalt` vpcConfigurationUpdates+        `Prelude.hashWithSalt` zeppelinApplicationConfigurationUpdate++instance+  Prelude.NFData+    ApplicationConfigurationUpdate+  where+  rnf ApplicationConfigurationUpdate' {..} =+    Prelude.rnf applicationCodeConfigurationUpdate+      `Prelude.seq` Prelude.rnf applicationSnapshotConfigurationUpdate+      `Prelude.seq` Prelude.rnf environmentPropertyUpdates+      `Prelude.seq` Prelude.rnf flinkApplicationConfigurationUpdate+      `Prelude.seq` Prelude.rnf sqlApplicationConfigurationUpdate+      `Prelude.seq` Prelude.rnf vpcConfigurationUpdates+      `Prelude.seq` Prelude.rnf zeppelinApplicationConfigurationUpdate++instance Data.ToJSON ApplicationConfigurationUpdate where+  toJSON ApplicationConfigurationUpdate' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("ApplicationCodeConfigurationUpdate" Data..=)+              Prelude.<$> applicationCodeConfigurationUpdate,+            ("ApplicationSnapshotConfigurationUpdate" Data..=)+              Prelude.<$> applicationSnapshotConfigurationUpdate,+            ("EnvironmentPropertyUpdates" Data..=)+              Prelude.<$> environmentPropertyUpdates,+            ("FlinkApplicationConfigurationUpdate" Data..=)+              Prelude.<$> flinkApplicationConfigurationUpdate,+            ("SqlApplicationConfigurationUpdate" Data..=)+              Prelude.<$> sqlApplicationConfigurationUpdate,+            ("VpcConfigurationUpdates" Data..=)+              Prelude.<$> vpcConfigurationUpdates,+            ("ZeppelinApplicationConfigurationUpdate" Data..=)+              Prelude.<$> zeppelinApplicationConfigurationUpdate+          ]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/ApplicationDetail.hs view
@@ -0,0 +1,316 @@+{-# 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.KinesisAnalyticsV2.Types.ApplicationDetail+-- 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.KinesisAnalyticsV2.Types.ApplicationDetail where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types.ApplicationConfigurationDescription+import Amazonka.KinesisAnalyticsV2.Types.ApplicationMaintenanceConfigurationDescription+import Amazonka.KinesisAnalyticsV2.Types.ApplicationMode+import Amazonka.KinesisAnalyticsV2.Types.ApplicationStatus+import Amazonka.KinesisAnalyticsV2.Types.CloudWatchLoggingOptionDescription+import Amazonka.KinesisAnalyticsV2.Types.RuntimeEnvironment+import qualified Amazonka.Prelude as Prelude++-- | Describes the application, including the application Amazon Resource+-- Name (ARN), status, latest version, and input and output configurations.+--+-- /See:/ 'newApplicationDetail' smart constructor.+data ApplicationDetail = ApplicationDetail'+  { -- | Describes details about the application code and starting parameters for+    -- a Kinesis Data Analytics application.+    applicationConfigurationDescription :: Prelude.Maybe ApplicationConfigurationDescription,+    -- | The description of the application.+    applicationDescription :: Prelude.Maybe Prelude.Text,+    -- | The details of the maintenance configuration for the application.+    applicationMaintenanceConfigurationDescription :: Prelude.Maybe ApplicationMaintenanceConfigurationDescription,+    -- | To create a Kinesis Data Analytics Studio notebook, you must set the+    -- mode to @INTERACTIVE@. However, for a Kinesis Data Analytics for Apache+    -- Flink application, the mode is optional.+    applicationMode :: Prelude.Maybe ApplicationMode,+    -- | If you reverted the application using RollbackApplication, the+    -- application version when @RollbackApplication@ was called.+    applicationVersionRolledBackFrom :: Prelude.Maybe Prelude.Natural,+    -- | The version to which you want to roll back the application.+    applicationVersionRolledBackTo :: Prelude.Maybe Prelude.Natural,+    -- | The previous application version before the latest application update.+    -- RollbackApplication reverts the application to this version.+    applicationVersionUpdatedFrom :: Prelude.Maybe Prelude.Natural,+    -- | Describes the application Amazon CloudWatch logging options.+    cloudWatchLoggingOptionDescriptions :: Prelude.Maybe [CloudWatchLoggingOptionDescription],+    -- | A value you use to implement strong concurrency for application updates.+    conditionalToken :: Prelude.Maybe Prelude.Text,+    -- | The current timestamp when the application was created.+    createTimestamp :: Prelude.Maybe Data.POSIX,+    -- | The current timestamp when the application was last updated.+    lastUpdateTimestamp :: Prelude.Maybe Data.POSIX,+    -- | Specifies the IAM role that the application uses to access external+    -- resources.+    serviceExecutionRole :: Prelude.Maybe Prelude.Text,+    -- | The ARN of the application.+    applicationARN :: Prelude.Text,+    -- | The name of the application.+    applicationName :: Prelude.Text,+    -- | The runtime environment for the application.+    runtimeEnvironment :: RuntimeEnvironment,+    -- | The status of the application.+    applicationStatus :: ApplicationStatus,+    -- | Provides the current application version. Kinesis Data Analytics updates+    -- the @ApplicationVersionId@ each time you update the application.+    applicationVersionId :: Prelude.Natural+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ApplicationDetail' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applicationConfigurationDescription', 'applicationDetail_applicationConfigurationDescription' - Describes details about the application code and starting parameters for+-- a Kinesis Data Analytics application.+--+-- 'applicationDescription', 'applicationDetail_applicationDescription' - The description of the application.+--+-- 'applicationMaintenanceConfigurationDescription', 'applicationDetail_applicationMaintenanceConfigurationDescription' - The details of the maintenance configuration for the application.+--+-- 'applicationMode', 'applicationDetail_applicationMode' - To create a Kinesis Data Analytics Studio notebook, you must set the+-- mode to @INTERACTIVE@. However, for a Kinesis Data Analytics for Apache+-- Flink application, the mode is optional.+--+-- 'applicationVersionRolledBackFrom', 'applicationDetail_applicationVersionRolledBackFrom' - If you reverted the application using RollbackApplication, the+-- application version when @RollbackApplication@ was called.+--+-- 'applicationVersionRolledBackTo', 'applicationDetail_applicationVersionRolledBackTo' - The version to which you want to roll back the application.+--+-- 'applicationVersionUpdatedFrom', 'applicationDetail_applicationVersionUpdatedFrom' - The previous application version before the latest application update.+-- RollbackApplication reverts the application to this version.+--+-- 'cloudWatchLoggingOptionDescriptions', 'applicationDetail_cloudWatchLoggingOptionDescriptions' - Describes the application Amazon CloudWatch logging options.+--+-- 'conditionalToken', 'applicationDetail_conditionalToken' - A value you use to implement strong concurrency for application updates.+--+-- 'createTimestamp', 'applicationDetail_createTimestamp' - The current timestamp when the application was created.+--+-- 'lastUpdateTimestamp', 'applicationDetail_lastUpdateTimestamp' - The current timestamp when the application was last updated.+--+-- 'serviceExecutionRole', 'applicationDetail_serviceExecutionRole' - Specifies the IAM role that the application uses to access external+-- resources.+--+-- 'applicationARN', 'applicationDetail_applicationARN' - The ARN of the application.+--+-- 'applicationName', 'applicationDetail_applicationName' - The name of the application.+--+-- 'runtimeEnvironment', 'applicationDetail_runtimeEnvironment' - The runtime environment for the application.+--+-- 'applicationStatus', 'applicationDetail_applicationStatus' - The status of the application.+--+-- 'applicationVersionId', 'applicationDetail_applicationVersionId' - Provides the current application version. Kinesis Data Analytics updates+-- the @ApplicationVersionId@ each time you update the application.+newApplicationDetail ::+  -- | 'applicationARN'+  Prelude.Text ->+  -- | 'applicationName'+  Prelude.Text ->+  -- | 'runtimeEnvironment'+  RuntimeEnvironment ->+  -- | 'applicationStatus'+  ApplicationStatus ->+  -- | 'applicationVersionId'+  Prelude.Natural ->+  ApplicationDetail+newApplicationDetail+  pApplicationARN_+  pApplicationName_+  pRuntimeEnvironment_+  pApplicationStatus_+  pApplicationVersionId_ =+    ApplicationDetail'+      { applicationConfigurationDescription =+          Prelude.Nothing,+        applicationDescription = Prelude.Nothing,+        applicationMaintenanceConfigurationDescription =+          Prelude.Nothing,+        applicationMode = Prelude.Nothing,+        applicationVersionRolledBackFrom = Prelude.Nothing,+        applicationVersionRolledBackTo = Prelude.Nothing,+        applicationVersionUpdatedFrom = Prelude.Nothing,+        cloudWatchLoggingOptionDescriptions =+          Prelude.Nothing,+        conditionalToken = Prelude.Nothing,+        createTimestamp = Prelude.Nothing,+        lastUpdateTimestamp = Prelude.Nothing,+        serviceExecutionRole = Prelude.Nothing,+        applicationARN = pApplicationARN_,+        applicationName = pApplicationName_,+        runtimeEnvironment = pRuntimeEnvironment_,+        applicationStatus = pApplicationStatus_,+        applicationVersionId = pApplicationVersionId_+      }++-- | Describes details about the application code and starting parameters for+-- a Kinesis Data Analytics application.+applicationDetail_applicationConfigurationDescription :: Lens.Lens' ApplicationDetail (Prelude.Maybe ApplicationConfigurationDescription)+applicationDetail_applicationConfigurationDescription = Lens.lens (\ApplicationDetail' {applicationConfigurationDescription} -> applicationConfigurationDescription) (\s@ApplicationDetail' {} a -> s {applicationConfigurationDescription = a} :: ApplicationDetail)++-- | The description of the application.+applicationDetail_applicationDescription :: Lens.Lens' ApplicationDetail (Prelude.Maybe Prelude.Text)+applicationDetail_applicationDescription = Lens.lens (\ApplicationDetail' {applicationDescription} -> applicationDescription) (\s@ApplicationDetail' {} a -> s {applicationDescription = a} :: ApplicationDetail)++-- | The details of the maintenance configuration for the application.+applicationDetail_applicationMaintenanceConfigurationDescription :: Lens.Lens' ApplicationDetail (Prelude.Maybe ApplicationMaintenanceConfigurationDescription)+applicationDetail_applicationMaintenanceConfigurationDescription = Lens.lens (\ApplicationDetail' {applicationMaintenanceConfigurationDescription} -> applicationMaintenanceConfigurationDescription) (\s@ApplicationDetail' {} a -> s {applicationMaintenanceConfigurationDescription = a} :: ApplicationDetail)++-- | To create a Kinesis Data Analytics Studio notebook, you must set the+-- mode to @INTERACTIVE@. However, for a Kinesis Data Analytics for Apache+-- Flink application, the mode is optional.+applicationDetail_applicationMode :: Lens.Lens' ApplicationDetail (Prelude.Maybe ApplicationMode)+applicationDetail_applicationMode = Lens.lens (\ApplicationDetail' {applicationMode} -> applicationMode) (\s@ApplicationDetail' {} a -> s {applicationMode = a} :: ApplicationDetail)++-- | If you reverted the application using RollbackApplication, the+-- application version when @RollbackApplication@ was called.+applicationDetail_applicationVersionRolledBackFrom :: Lens.Lens' ApplicationDetail (Prelude.Maybe Prelude.Natural)+applicationDetail_applicationVersionRolledBackFrom = Lens.lens (\ApplicationDetail' {applicationVersionRolledBackFrom} -> applicationVersionRolledBackFrom) (\s@ApplicationDetail' {} a -> s {applicationVersionRolledBackFrom = a} :: ApplicationDetail)++-- | The version to which you want to roll back the application.+applicationDetail_applicationVersionRolledBackTo :: Lens.Lens' ApplicationDetail (Prelude.Maybe Prelude.Natural)+applicationDetail_applicationVersionRolledBackTo = Lens.lens (\ApplicationDetail' {applicationVersionRolledBackTo} -> applicationVersionRolledBackTo) (\s@ApplicationDetail' {} a -> s {applicationVersionRolledBackTo = a} :: ApplicationDetail)++-- | The previous application version before the latest application update.+-- RollbackApplication reverts the application to this version.+applicationDetail_applicationVersionUpdatedFrom :: Lens.Lens' ApplicationDetail (Prelude.Maybe Prelude.Natural)+applicationDetail_applicationVersionUpdatedFrom = Lens.lens (\ApplicationDetail' {applicationVersionUpdatedFrom} -> applicationVersionUpdatedFrom) (\s@ApplicationDetail' {} a -> s {applicationVersionUpdatedFrom = a} :: ApplicationDetail)++-- | Describes the application Amazon CloudWatch logging options.+applicationDetail_cloudWatchLoggingOptionDescriptions :: Lens.Lens' ApplicationDetail (Prelude.Maybe [CloudWatchLoggingOptionDescription])+applicationDetail_cloudWatchLoggingOptionDescriptions = Lens.lens (\ApplicationDetail' {cloudWatchLoggingOptionDescriptions} -> cloudWatchLoggingOptionDescriptions) (\s@ApplicationDetail' {} a -> s {cloudWatchLoggingOptionDescriptions = a} :: ApplicationDetail) Prelude.. Lens.mapping Lens.coerced++-- | A value you use to implement strong concurrency for application updates.+applicationDetail_conditionalToken :: Lens.Lens' ApplicationDetail (Prelude.Maybe Prelude.Text)+applicationDetail_conditionalToken = Lens.lens (\ApplicationDetail' {conditionalToken} -> conditionalToken) (\s@ApplicationDetail' {} a -> s {conditionalToken = a} :: ApplicationDetail)++-- | The current timestamp when the application was created.+applicationDetail_createTimestamp :: Lens.Lens' ApplicationDetail (Prelude.Maybe Prelude.UTCTime)+applicationDetail_createTimestamp = Lens.lens (\ApplicationDetail' {createTimestamp} -> createTimestamp) (\s@ApplicationDetail' {} a -> s {createTimestamp = a} :: ApplicationDetail) Prelude.. Lens.mapping Data._Time++-- | The current timestamp when the application was last updated.+applicationDetail_lastUpdateTimestamp :: Lens.Lens' ApplicationDetail (Prelude.Maybe Prelude.UTCTime)+applicationDetail_lastUpdateTimestamp = Lens.lens (\ApplicationDetail' {lastUpdateTimestamp} -> lastUpdateTimestamp) (\s@ApplicationDetail' {} a -> s {lastUpdateTimestamp = a} :: ApplicationDetail) Prelude.. Lens.mapping Data._Time++-- | Specifies the IAM role that the application uses to access external+-- resources.+applicationDetail_serviceExecutionRole :: Lens.Lens' ApplicationDetail (Prelude.Maybe Prelude.Text)+applicationDetail_serviceExecutionRole = Lens.lens (\ApplicationDetail' {serviceExecutionRole} -> serviceExecutionRole) (\s@ApplicationDetail' {} a -> s {serviceExecutionRole = a} :: ApplicationDetail)++-- | The ARN of the application.+applicationDetail_applicationARN :: Lens.Lens' ApplicationDetail Prelude.Text+applicationDetail_applicationARN = Lens.lens (\ApplicationDetail' {applicationARN} -> applicationARN) (\s@ApplicationDetail' {} a -> s {applicationARN = a} :: ApplicationDetail)++-- | The name of the application.+applicationDetail_applicationName :: Lens.Lens' ApplicationDetail Prelude.Text+applicationDetail_applicationName = Lens.lens (\ApplicationDetail' {applicationName} -> applicationName) (\s@ApplicationDetail' {} a -> s {applicationName = a} :: ApplicationDetail)++-- | The runtime environment for the application.+applicationDetail_runtimeEnvironment :: Lens.Lens' ApplicationDetail RuntimeEnvironment+applicationDetail_runtimeEnvironment = Lens.lens (\ApplicationDetail' {runtimeEnvironment} -> runtimeEnvironment) (\s@ApplicationDetail' {} a -> s {runtimeEnvironment = a} :: ApplicationDetail)++-- | The status of the application.+applicationDetail_applicationStatus :: Lens.Lens' ApplicationDetail ApplicationStatus+applicationDetail_applicationStatus = Lens.lens (\ApplicationDetail' {applicationStatus} -> applicationStatus) (\s@ApplicationDetail' {} a -> s {applicationStatus = a} :: ApplicationDetail)++-- | Provides the current application version. Kinesis Data Analytics updates+-- the @ApplicationVersionId@ each time you update the application.+applicationDetail_applicationVersionId :: Lens.Lens' ApplicationDetail Prelude.Natural+applicationDetail_applicationVersionId = Lens.lens (\ApplicationDetail' {applicationVersionId} -> applicationVersionId) (\s@ApplicationDetail' {} a -> s {applicationVersionId = a} :: ApplicationDetail)++instance Data.FromJSON ApplicationDetail where+  parseJSON =+    Data.withObject+      "ApplicationDetail"+      ( \x ->+          ApplicationDetail'+            Prelude.<$> (x Data..:? "ApplicationConfigurationDescription")+            Prelude.<*> (x Data..:? "ApplicationDescription")+            Prelude.<*> ( x+                            Data..:? "ApplicationMaintenanceConfigurationDescription"+                        )+            Prelude.<*> (x Data..:? "ApplicationMode")+            Prelude.<*> (x Data..:? "ApplicationVersionRolledBackFrom")+            Prelude.<*> (x Data..:? "ApplicationVersionRolledBackTo")+            Prelude.<*> (x Data..:? "ApplicationVersionUpdatedFrom")+            Prelude.<*> ( x+                            Data..:? "CloudWatchLoggingOptionDescriptions"+                            Data..!= Prelude.mempty+                        )+            Prelude.<*> (x Data..:? "ConditionalToken")+            Prelude.<*> (x Data..:? "CreateTimestamp")+            Prelude.<*> (x Data..:? "LastUpdateTimestamp")+            Prelude.<*> (x Data..:? "ServiceExecutionRole")+            Prelude.<*> (x Data..: "ApplicationARN")+            Prelude.<*> (x Data..: "ApplicationName")+            Prelude.<*> (x Data..: "RuntimeEnvironment")+            Prelude.<*> (x Data..: "ApplicationStatus")+            Prelude.<*> (x Data..: "ApplicationVersionId")+      )++instance Prelude.Hashable ApplicationDetail where+  hashWithSalt _salt ApplicationDetail' {..} =+    _salt+      `Prelude.hashWithSalt` applicationConfigurationDescription+      `Prelude.hashWithSalt` applicationDescription+      `Prelude.hashWithSalt` applicationMaintenanceConfigurationDescription+      `Prelude.hashWithSalt` applicationMode+      `Prelude.hashWithSalt` applicationVersionRolledBackFrom+      `Prelude.hashWithSalt` applicationVersionRolledBackTo+      `Prelude.hashWithSalt` applicationVersionUpdatedFrom+      `Prelude.hashWithSalt` cloudWatchLoggingOptionDescriptions+      `Prelude.hashWithSalt` conditionalToken+      `Prelude.hashWithSalt` createTimestamp+      `Prelude.hashWithSalt` lastUpdateTimestamp+      `Prelude.hashWithSalt` serviceExecutionRole+      `Prelude.hashWithSalt` applicationARN+      `Prelude.hashWithSalt` applicationName+      `Prelude.hashWithSalt` runtimeEnvironment+      `Prelude.hashWithSalt` applicationStatus+      `Prelude.hashWithSalt` applicationVersionId++instance Prelude.NFData ApplicationDetail where+  rnf ApplicationDetail' {..} =+    Prelude.rnf applicationConfigurationDescription+      `Prelude.seq` Prelude.rnf applicationDescription+      `Prelude.seq` Prelude.rnf+        applicationMaintenanceConfigurationDescription+      `Prelude.seq` Prelude.rnf applicationMode+      `Prelude.seq` Prelude.rnf applicationVersionRolledBackFrom+      `Prelude.seq` Prelude.rnf applicationVersionRolledBackTo+      `Prelude.seq` Prelude.rnf applicationVersionUpdatedFrom+      `Prelude.seq` Prelude.rnf cloudWatchLoggingOptionDescriptions+      `Prelude.seq` Prelude.rnf conditionalToken+      `Prelude.seq` Prelude.rnf createTimestamp+      `Prelude.seq` Prelude.rnf lastUpdateTimestamp+      `Prelude.seq` Prelude.rnf serviceExecutionRole+      `Prelude.seq` Prelude.rnf applicationARN+      `Prelude.seq` Prelude.rnf applicationName+      `Prelude.seq` Prelude.rnf runtimeEnvironment+      `Prelude.seq` Prelude.rnf applicationStatus+      `Prelude.seq` Prelude.rnf applicationVersionId
+ gen/Amazonka/KinesisAnalyticsV2/Types/ApplicationMaintenanceConfigurationDescription.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.KinesisAnalyticsV2.Types.ApplicationMaintenanceConfigurationDescription+-- 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.KinesisAnalyticsV2.Types.ApplicationMaintenanceConfigurationDescription where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | The details of the maintenance configuration for the application.+--+-- /See:/ 'newApplicationMaintenanceConfigurationDescription' smart constructor.+data ApplicationMaintenanceConfigurationDescription = ApplicationMaintenanceConfigurationDescription'+  { -- | The start time for the maintenance window.+    applicationMaintenanceWindowStartTime :: Prelude.Text,+    -- | The end time for the maintenance window.+    applicationMaintenanceWindowEndTime :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ApplicationMaintenanceConfigurationDescription' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applicationMaintenanceWindowStartTime', 'applicationMaintenanceConfigurationDescription_applicationMaintenanceWindowStartTime' - The start time for the maintenance window.+--+-- 'applicationMaintenanceWindowEndTime', 'applicationMaintenanceConfigurationDescription_applicationMaintenanceWindowEndTime' - The end time for the maintenance window.+newApplicationMaintenanceConfigurationDescription ::+  -- | 'applicationMaintenanceWindowStartTime'+  Prelude.Text ->+  -- | 'applicationMaintenanceWindowEndTime'+  Prelude.Text ->+  ApplicationMaintenanceConfigurationDescription+newApplicationMaintenanceConfigurationDescription+  pApplicationMaintenanceWindowStartTime_+  pApplicationMaintenanceWindowEndTime_ =+    ApplicationMaintenanceConfigurationDescription'+      { applicationMaintenanceWindowStartTime =+          pApplicationMaintenanceWindowStartTime_,+        applicationMaintenanceWindowEndTime =+          pApplicationMaintenanceWindowEndTime_+      }++-- | The start time for the maintenance window.+applicationMaintenanceConfigurationDescription_applicationMaintenanceWindowStartTime :: Lens.Lens' ApplicationMaintenanceConfigurationDescription Prelude.Text+applicationMaintenanceConfigurationDescription_applicationMaintenanceWindowStartTime = Lens.lens (\ApplicationMaintenanceConfigurationDescription' {applicationMaintenanceWindowStartTime} -> applicationMaintenanceWindowStartTime) (\s@ApplicationMaintenanceConfigurationDescription' {} a -> s {applicationMaintenanceWindowStartTime = a} :: ApplicationMaintenanceConfigurationDescription)++-- | The end time for the maintenance window.+applicationMaintenanceConfigurationDescription_applicationMaintenanceWindowEndTime :: Lens.Lens' ApplicationMaintenanceConfigurationDescription Prelude.Text+applicationMaintenanceConfigurationDescription_applicationMaintenanceWindowEndTime = Lens.lens (\ApplicationMaintenanceConfigurationDescription' {applicationMaintenanceWindowEndTime} -> applicationMaintenanceWindowEndTime) (\s@ApplicationMaintenanceConfigurationDescription' {} a -> s {applicationMaintenanceWindowEndTime = a} :: ApplicationMaintenanceConfigurationDescription)++instance+  Data.FromJSON+    ApplicationMaintenanceConfigurationDescription+  where+  parseJSON =+    Data.withObject+      "ApplicationMaintenanceConfigurationDescription"+      ( \x ->+          ApplicationMaintenanceConfigurationDescription'+            Prelude.<$> (x Data..: "ApplicationMaintenanceWindowStartTime")+            Prelude.<*> (x Data..: "ApplicationMaintenanceWindowEndTime")+      )++instance+  Prelude.Hashable+    ApplicationMaintenanceConfigurationDescription+  where+  hashWithSalt+    _salt+    ApplicationMaintenanceConfigurationDescription' {..} =+      _salt+        `Prelude.hashWithSalt` applicationMaintenanceWindowStartTime+        `Prelude.hashWithSalt` applicationMaintenanceWindowEndTime++instance+  Prelude.NFData+    ApplicationMaintenanceConfigurationDescription+  where+  rnf+    ApplicationMaintenanceConfigurationDescription' {..} =+      Prelude.rnf applicationMaintenanceWindowStartTime+        `Prelude.seq` Prelude.rnf applicationMaintenanceWindowEndTime
+ gen/Amazonka/KinesisAnalyticsV2/Types/ApplicationMaintenanceConfigurationUpdate.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.KinesisAnalyticsV2.Types.ApplicationMaintenanceConfigurationUpdate+-- 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.KinesisAnalyticsV2.Types.ApplicationMaintenanceConfigurationUpdate 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++-- | Describes the updated maintenance configuration for the application.+--+-- /See:/ 'newApplicationMaintenanceConfigurationUpdate' smart constructor.+data ApplicationMaintenanceConfigurationUpdate = ApplicationMaintenanceConfigurationUpdate'+  { -- | The updated start time for the maintenance window.+    applicationMaintenanceWindowStartTimeUpdate :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ApplicationMaintenanceConfigurationUpdate' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applicationMaintenanceWindowStartTimeUpdate', 'applicationMaintenanceConfigurationUpdate_applicationMaintenanceWindowStartTimeUpdate' - The updated start time for the maintenance window.+newApplicationMaintenanceConfigurationUpdate ::+  -- | 'applicationMaintenanceWindowStartTimeUpdate'+  Prelude.Text ->+  ApplicationMaintenanceConfigurationUpdate+newApplicationMaintenanceConfigurationUpdate+  pApplicationMaintenanceWindowStartTimeUpdate_ =+    ApplicationMaintenanceConfigurationUpdate'+      { applicationMaintenanceWindowStartTimeUpdate =+          pApplicationMaintenanceWindowStartTimeUpdate_+      }++-- | The updated start time for the maintenance window.+applicationMaintenanceConfigurationUpdate_applicationMaintenanceWindowStartTimeUpdate :: Lens.Lens' ApplicationMaintenanceConfigurationUpdate Prelude.Text+applicationMaintenanceConfigurationUpdate_applicationMaintenanceWindowStartTimeUpdate = Lens.lens (\ApplicationMaintenanceConfigurationUpdate' {applicationMaintenanceWindowStartTimeUpdate} -> applicationMaintenanceWindowStartTimeUpdate) (\s@ApplicationMaintenanceConfigurationUpdate' {} a -> s {applicationMaintenanceWindowStartTimeUpdate = a} :: ApplicationMaintenanceConfigurationUpdate)++instance+  Prelude.Hashable+    ApplicationMaintenanceConfigurationUpdate+  where+  hashWithSalt+    _salt+    ApplicationMaintenanceConfigurationUpdate' {..} =+      _salt+        `Prelude.hashWithSalt` applicationMaintenanceWindowStartTimeUpdate++instance+  Prelude.NFData+    ApplicationMaintenanceConfigurationUpdate+  where+  rnf ApplicationMaintenanceConfigurationUpdate' {..} =+    Prelude.rnf+      applicationMaintenanceWindowStartTimeUpdate++instance+  Data.ToJSON+    ApplicationMaintenanceConfigurationUpdate+  where+  toJSON ApplicationMaintenanceConfigurationUpdate' {..} =+    Data.object+      ( Prelude.catMaybes+          [ Prelude.Just+              ( "ApplicationMaintenanceWindowStartTimeUpdate"+                  Data..= applicationMaintenanceWindowStartTimeUpdate+              )+          ]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/ApplicationMode.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.KinesisAnalyticsV2.Types.ApplicationMode+-- 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.KinesisAnalyticsV2.Types.ApplicationMode+  ( ApplicationMode+      ( ..,+        ApplicationMode_INTERACTIVE,+        ApplicationMode_STREAMING+      ),+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype ApplicationMode = ApplicationMode'+  { fromApplicationMode ::+      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 ApplicationMode_INTERACTIVE :: ApplicationMode+pattern ApplicationMode_INTERACTIVE = ApplicationMode' "INTERACTIVE"++pattern ApplicationMode_STREAMING :: ApplicationMode+pattern ApplicationMode_STREAMING = ApplicationMode' "STREAMING"++{-# COMPLETE+  ApplicationMode_INTERACTIVE,+  ApplicationMode_STREAMING,+  ApplicationMode'+  #-}
+ gen/Amazonka/KinesisAnalyticsV2/Types/ApplicationRestoreConfiguration.hs view
@@ -0,0 +1,123 @@+{-# 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.KinesisAnalyticsV2.Types.ApplicationRestoreConfiguration+-- 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.KinesisAnalyticsV2.Types.ApplicationRestoreConfiguration where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types.ApplicationRestoreType+import qualified Amazonka.Prelude as Prelude++-- | Specifies the method and snapshot to use when restarting an application+-- using previously saved application state.+--+-- /See:/ 'newApplicationRestoreConfiguration' smart constructor.+data ApplicationRestoreConfiguration = ApplicationRestoreConfiguration'+  { -- | The identifier of an existing snapshot of application state to use to+    -- restart an application. The application uses this value if+    -- @RESTORE_FROM_CUSTOM_SNAPSHOT@ is specified for the+    -- @ApplicationRestoreType@.+    snapshotName :: Prelude.Maybe Prelude.Text,+    -- | Specifies how the application should be restored.+    applicationRestoreType :: ApplicationRestoreType+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ApplicationRestoreConfiguration' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'snapshotName', 'applicationRestoreConfiguration_snapshotName' - The identifier of an existing snapshot of application state to use to+-- restart an application. The application uses this value if+-- @RESTORE_FROM_CUSTOM_SNAPSHOT@ is specified for the+-- @ApplicationRestoreType@.+--+-- 'applicationRestoreType', 'applicationRestoreConfiguration_applicationRestoreType' - Specifies how the application should be restored.+newApplicationRestoreConfiguration ::+  -- | 'applicationRestoreType'+  ApplicationRestoreType ->+  ApplicationRestoreConfiguration+newApplicationRestoreConfiguration+  pApplicationRestoreType_ =+    ApplicationRestoreConfiguration'+      { snapshotName =+          Prelude.Nothing,+        applicationRestoreType =+          pApplicationRestoreType_+      }++-- | The identifier of an existing snapshot of application state to use to+-- restart an application. The application uses this value if+-- @RESTORE_FROM_CUSTOM_SNAPSHOT@ is specified for the+-- @ApplicationRestoreType@.+applicationRestoreConfiguration_snapshotName :: Lens.Lens' ApplicationRestoreConfiguration (Prelude.Maybe Prelude.Text)+applicationRestoreConfiguration_snapshotName = Lens.lens (\ApplicationRestoreConfiguration' {snapshotName} -> snapshotName) (\s@ApplicationRestoreConfiguration' {} a -> s {snapshotName = a} :: ApplicationRestoreConfiguration)++-- | Specifies how the application should be restored.+applicationRestoreConfiguration_applicationRestoreType :: Lens.Lens' ApplicationRestoreConfiguration ApplicationRestoreType+applicationRestoreConfiguration_applicationRestoreType = Lens.lens (\ApplicationRestoreConfiguration' {applicationRestoreType} -> applicationRestoreType) (\s@ApplicationRestoreConfiguration' {} a -> s {applicationRestoreType = a} :: ApplicationRestoreConfiguration)++instance+  Data.FromJSON+    ApplicationRestoreConfiguration+  where+  parseJSON =+    Data.withObject+      "ApplicationRestoreConfiguration"+      ( \x ->+          ApplicationRestoreConfiguration'+            Prelude.<$> (x Data..:? "SnapshotName")+            Prelude.<*> (x Data..: "ApplicationRestoreType")+      )++instance+  Prelude.Hashable+    ApplicationRestoreConfiguration+  where+  hashWithSalt+    _salt+    ApplicationRestoreConfiguration' {..} =+      _salt+        `Prelude.hashWithSalt` snapshotName+        `Prelude.hashWithSalt` applicationRestoreType++instance+  Prelude.NFData+    ApplicationRestoreConfiguration+  where+  rnf ApplicationRestoreConfiguration' {..} =+    Prelude.rnf snapshotName+      `Prelude.seq` Prelude.rnf applicationRestoreType++instance Data.ToJSON ApplicationRestoreConfiguration where+  toJSON ApplicationRestoreConfiguration' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("SnapshotName" Data..=) Prelude.<$> snapshotName,+            Prelude.Just+              ( "ApplicationRestoreType"+                  Data..= applicationRestoreType+              )+          ]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/ApplicationRestoreType.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.KinesisAnalyticsV2.Types.ApplicationRestoreType+-- 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.KinesisAnalyticsV2.Types.ApplicationRestoreType+  ( ApplicationRestoreType+      ( ..,+        ApplicationRestoreType_RESTORE_FROM_CUSTOM_SNAPSHOT,+        ApplicationRestoreType_RESTORE_FROM_LATEST_SNAPSHOT,+        ApplicationRestoreType_SKIP_RESTORE_FROM_SNAPSHOT+      ),+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype ApplicationRestoreType = ApplicationRestoreType'+  { fromApplicationRestoreType ::+      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 ApplicationRestoreType_RESTORE_FROM_CUSTOM_SNAPSHOT :: ApplicationRestoreType+pattern ApplicationRestoreType_RESTORE_FROM_CUSTOM_SNAPSHOT = ApplicationRestoreType' "RESTORE_FROM_CUSTOM_SNAPSHOT"++pattern ApplicationRestoreType_RESTORE_FROM_LATEST_SNAPSHOT :: ApplicationRestoreType+pattern ApplicationRestoreType_RESTORE_FROM_LATEST_SNAPSHOT = ApplicationRestoreType' "RESTORE_FROM_LATEST_SNAPSHOT"++pattern ApplicationRestoreType_SKIP_RESTORE_FROM_SNAPSHOT :: ApplicationRestoreType+pattern ApplicationRestoreType_SKIP_RESTORE_FROM_SNAPSHOT = ApplicationRestoreType' "SKIP_RESTORE_FROM_SNAPSHOT"++{-# COMPLETE+  ApplicationRestoreType_RESTORE_FROM_CUSTOM_SNAPSHOT,+  ApplicationRestoreType_RESTORE_FROM_LATEST_SNAPSHOT,+  ApplicationRestoreType_SKIP_RESTORE_FROM_SNAPSHOT,+  ApplicationRestoreType'+  #-}
+ gen/Amazonka/KinesisAnalyticsV2/Types/ApplicationSnapshotConfiguration.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.KinesisAnalyticsV2.Types.ApplicationSnapshotConfiguration+-- 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.KinesisAnalyticsV2.Types.ApplicationSnapshotConfiguration 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++-- | Describes whether snapshots are enabled for a Flink-based Kinesis Data+-- Analytics application.+--+-- /See:/ 'newApplicationSnapshotConfiguration' smart constructor.+data ApplicationSnapshotConfiguration = ApplicationSnapshotConfiguration'+  { -- | Describes whether snapshots are enabled for a Flink-based Kinesis Data+    -- Analytics application.+    snapshotsEnabled :: Prelude.Bool+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ApplicationSnapshotConfiguration' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'snapshotsEnabled', 'applicationSnapshotConfiguration_snapshotsEnabled' - Describes whether snapshots are enabled for a Flink-based Kinesis Data+-- Analytics application.+newApplicationSnapshotConfiguration ::+  -- | 'snapshotsEnabled'+  Prelude.Bool ->+  ApplicationSnapshotConfiguration+newApplicationSnapshotConfiguration+  pSnapshotsEnabled_ =+    ApplicationSnapshotConfiguration'+      { snapshotsEnabled =+          pSnapshotsEnabled_+      }++-- | Describes whether snapshots are enabled for a Flink-based Kinesis Data+-- Analytics application.+applicationSnapshotConfiguration_snapshotsEnabled :: Lens.Lens' ApplicationSnapshotConfiguration Prelude.Bool+applicationSnapshotConfiguration_snapshotsEnabled = Lens.lens (\ApplicationSnapshotConfiguration' {snapshotsEnabled} -> snapshotsEnabled) (\s@ApplicationSnapshotConfiguration' {} a -> s {snapshotsEnabled = a} :: ApplicationSnapshotConfiguration)++instance+  Prelude.Hashable+    ApplicationSnapshotConfiguration+  where+  hashWithSalt+    _salt+    ApplicationSnapshotConfiguration' {..} =+      _salt `Prelude.hashWithSalt` snapshotsEnabled++instance+  Prelude.NFData+    ApplicationSnapshotConfiguration+  where+  rnf ApplicationSnapshotConfiguration' {..} =+    Prelude.rnf snapshotsEnabled++instance Data.ToJSON ApplicationSnapshotConfiguration where+  toJSON ApplicationSnapshotConfiguration' {..} =+    Data.object+      ( Prelude.catMaybes+          [ Prelude.Just+              ("SnapshotsEnabled" Data..= snapshotsEnabled)+          ]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/ApplicationSnapshotConfigurationDescription.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.KinesisAnalyticsV2.Types.ApplicationSnapshotConfigurationDescription+-- 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.KinesisAnalyticsV2.Types.ApplicationSnapshotConfigurationDescription 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++-- | Describes whether snapshots are enabled for a Flink-based Kinesis Data+-- Analytics application.+--+-- /See:/ 'newApplicationSnapshotConfigurationDescription' smart constructor.+data ApplicationSnapshotConfigurationDescription = ApplicationSnapshotConfigurationDescription'+  { -- | Describes whether snapshots are enabled for a Flink-based Kinesis Data+    -- Analytics application.+    snapshotsEnabled :: Prelude.Bool+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ApplicationSnapshotConfigurationDescription' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'snapshotsEnabled', 'applicationSnapshotConfigurationDescription_snapshotsEnabled' - Describes whether snapshots are enabled for a Flink-based Kinesis Data+-- Analytics application.+newApplicationSnapshotConfigurationDescription ::+  -- | 'snapshotsEnabled'+  Prelude.Bool ->+  ApplicationSnapshotConfigurationDescription+newApplicationSnapshotConfigurationDescription+  pSnapshotsEnabled_ =+    ApplicationSnapshotConfigurationDescription'+      { snapshotsEnabled =+          pSnapshotsEnabled_+      }++-- | Describes whether snapshots are enabled for a Flink-based Kinesis Data+-- Analytics application.+applicationSnapshotConfigurationDescription_snapshotsEnabled :: Lens.Lens' ApplicationSnapshotConfigurationDescription Prelude.Bool+applicationSnapshotConfigurationDescription_snapshotsEnabled = Lens.lens (\ApplicationSnapshotConfigurationDescription' {snapshotsEnabled} -> snapshotsEnabled) (\s@ApplicationSnapshotConfigurationDescription' {} a -> s {snapshotsEnabled = a} :: ApplicationSnapshotConfigurationDescription)++instance+  Data.FromJSON+    ApplicationSnapshotConfigurationDescription+  where+  parseJSON =+    Data.withObject+      "ApplicationSnapshotConfigurationDescription"+      ( \x ->+          ApplicationSnapshotConfigurationDescription'+            Prelude.<$> (x Data..: "SnapshotsEnabled")+      )++instance+  Prelude.Hashable+    ApplicationSnapshotConfigurationDescription+  where+  hashWithSalt+    _salt+    ApplicationSnapshotConfigurationDescription' {..} =+      _salt `Prelude.hashWithSalt` snapshotsEnabled++instance+  Prelude.NFData+    ApplicationSnapshotConfigurationDescription+  where+  rnf ApplicationSnapshotConfigurationDescription' {..} =+    Prelude.rnf snapshotsEnabled
+ gen/Amazonka/KinesisAnalyticsV2/Types/ApplicationSnapshotConfigurationUpdate.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.KinesisAnalyticsV2.Types.ApplicationSnapshotConfigurationUpdate+-- 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.KinesisAnalyticsV2.Types.ApplicationSnapshotConfigurationUpdate 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++-- | Describes updates to whether snapshots are enabled for a Flink-based+-- Kinesis Data Analytics application.+--+-- /See:/ 'newApplicationSnapshotConfigurationUpdate' smart constructor.+data ApplicationSnapshotConfigurationUpdate = ApplicationSnapshotConfigurationUpdate'+  { -- | Describes updates to whether snapshots are enabled for an application.+    snapshotsEnabledUpdate :: Prelude.Bool+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ApplicationSnapshotConfigurationUpdate' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'snapshotsEnabledUpdate', 'applicationSnapshotConfigurationUpdate_snapshotsEnabledUpdate' - Describes updates to whether snapshots are enabled for an application.+newApplicationSnapshotConfigurationUpdate ::+  -- | 'snapshotsEnabledUpdate'+  Prelude.Bool ->+  ApplicationSnapshotConfigurationUpdate+newApplicationSnapshotConfigurationUpdate+  pSnapshotsEnabledUpdate_ =+    ApplicationSnapshotConfigurationUpdate'+      { snapshotsEnabledUpdate =+          pSnapshotsEnabledUpdate_+      }++-- | Describes updates to whether snapshots are enabled for an application.+applicationSnapshotConfigurationUpdate_snapshotsEnabledUpdate :: Lens.Lens' ApplicationSnapshotConfigurationUpdate Prelude.Bool+applicationSnapshotConfigurationUpdate_snapshotsEnabledUpdate = Lens.lens (\ApplicationSnapshotConfigurationUpdate' {snapshotsEnabledUpdate} -> snapshotsEnabledUpdate) (\s@ApplicationSnapshotConfigurationUpdate' {} a -> s {snapshotsEnabledUpdate = a} :: ApplicationSnapshotConfigurationUpdate)++instance+  Prelude.Hashable+    ApplicationSnapshotConfigurationUpdate+  where+  hashWithSalt+    _salt+    ApplicationSnapshotConfigurationUpdate' {..} =+      _salt `Prelude.hashWithSalt` snapshotsEnabledUpdate++instance+  Prelude.NFData+    ApplicationSnapshotConfigurationUpdate+  where+  rnf ApplicationSnapshotConfigurationUpdate' {..} =+    Prelude.rnf snapshotsEnabledUpdate++instance+  Data.ToJSON+    ApplicationSnapshotConfigurationUpdate+  where+  toJSON ApplicationSnapshotConfigurationUpdate' {..} =+    Data.object+      ( Prelude.catMaybes+          [ Prelude.Just+              ( "SnapshotsEnabledUpdate"+                  Data..= snapshotsEnabledUpdate+              )+          ]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/ApplicationStatus.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.KinesisAnalyticsV2.Types.ApplicationStatus+-- 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.KinesisAnalyticsV2.Types.ApplicationStatus+  ( ApplicationStatus+      ( ..,+        ApplicationStatus_AUTOSCALING,+        ApplicationStatus_DELETING,+        ApplicationStatus_FORCE_STOPPING,+        ApplicationStatus_MAINTENANCE,+        ApplicationStatus_READY,+        ApplicationStatus_ROLLED_BACK,+        ApplicationStatus_ROLLING_BACK,+        ApplicationStatus_RUNNING,+        ApplicationStatus_STARTING,+        ApplicationStatus_STOPPING,+        ApplicationStatus_UPDATING+      ),+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype ApplicationStatus = ApplicationStatus'+  { fromApplicationStatus ::+      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 ApplicationStatus_AUTOSCALING :: ApplicationStatus+pattern ApplicationStatus_AUTOSCALING = ApplicationStatus' "AUTOSCALING"++pattern ApplicationStatus_DELETING :: ApplicationStatus+pattern ApplicationStatus_DELETING = ApplicationStatus' "DELETING"++pattern ApplicationStatus_FORCE_STOPPING :: ApplicationStatus+pattern ApplicationStatus_FORCE_STOPPING = ApplicationStatus' "FORCE_STOPPING"++pattern ApplicationStatus_MAINTENANCE :: ApplicationStatus+pattern ApplicationStatus_MAINTENANCE = ApplicationStatus' "MAINTENANCE"++pattern ApplicationStatus_READY :: ApplicationStatus+pattern ApplicationStatus_READY = ApplicationStatus' "READY"++pattern ApplicationStatus_ROLLED_BACK :: ApplicationStatus+pattern ApplicationStatus_ROLLED_BACK = ApplicationStatus' "ROLLED_BACK"++pattern ApplicationStatus_ROLLING_BACK :: ApplicationStatus+pattern ApplicationStatus_ROLLING_BACK = ApplicationStatus' "ROLLING_BACK"++pattern ApplicationStatus_RUNNING :: ApplicationStatus+pattern ApplicationStatus_RUNNING = ApplicationStatus' "RUNNING"++pattern ApplicationStatus_STARTING :: ApplicationStatus+pattern ApplicationStatus_STARTING = ApplicationStatus' "STARTING"++pattern ApplicationStatus_STOPPING :: ApplicationStatus+pattern ApplicationStatus_STOPPING = ApplicationStatus' "STOPPING"++pattern ApplicationStatus_UPDATING :: ApplicationStatus+pattern ApplicationStatus_UPDATING = ApplicationStatus' "UPDATING"++{-# COMPLETE+  ApplicationStatus_AUTOSCALING,+  ApplicationStatus_DELETING,+  ApplicationStatus_FORCE_STOPPING,+  ApplicationStatus_MAINTENANCE,+  ApplicationStatus_READY,+  ApplicationStatus_ROLLED_BACK,+  ApplicationStatus_ROLLING_BACK,+  ApplicationStatus_RUNNING,+  ApplicationStatus_STARTING,+  ApplicationStatus_STOPPING,+  ApplicationStatus_UPDATING,+  ApplicationStatus'+  #-}
+ gen/Amazonka/KinesisAnalyticsV2/Types/ApplicationSummary.hs view
@@ -0,0 +1,158 @@+{-# 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.KinesisAnalyticsV2.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.KinesisAnalyticsV2.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.KinesisAnalyticsV2.Types.ApplicationMode+import Amazonka.KinesisAnalyticsV2.Types.ApplicationStatus+import Amazonka.KinesisAnalyticsV2.Types.RuntimeEnvironment+import qualified Amazonka.Prelude as Prelude++-- | Provides application summary information, including the application+-- Amazon Resource Name (ARN), name, and status.+--+-- /See:/ 'newApplicationSummary' smart constructor.+data ApplicationSummary = ApplicationSummary'+  { -- | For a Kinesis Data Analytics for Apache Flink application, the mode is+    -- @STREAMING@. For a Kinesis Data Analytics Studio notebook, it is+    -- @INTERACTIVE@.+    applicationMode :: Prelude.Maybe ApplicationMode,+    -- | The name of the application.+    applicationName :: Prelude.Text,+    -- | The ARN of the application.+    applicationARN :: Prelude.Text,+    -- | The status of the application.+    applicationStatus :: ApplicationStatus,+    -- | Provides the current application version.+    applicationVersionId :: Prelude.Natural,+    -- | The runtime environment for the application.+    runtimeEnvironment :: RuntimeEnvironment+  }+  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:+--+-- 'applicationMode', 'applicationSummary_applicationMode' - For a Kinesis Data Analytics for Apache Flink application, the mode is+-- @STREAMING@. For a Kinesis Data Analytics Studio notebook, it is+-- @INTERACTIVE@.+--+-- 'applicationName', 'applicationSummary_applicationName' - The name of the application.+--+-- 'applicationARN', 'applicationSummary_applicationARN' - The ARN of the application.+--+-- 'applicationStatus', 'applicationSummary_applicationStatus' - The status of the application.+--+-- 'applicationVersionId', 'applicationSummary_applicationVersionId' - Provides the current application version.+--+-- 'runtimeEnvironment', 'applicationSummary_runtimeEnvironment' - The runtime environment for the application.+newApplicationSummary ::+  -- | 'applicationName'+  Prelude.Text ->+  -- | 'applicationARN'+  Prelude.Text ->+  -- | 'applicationStatus'+  ApplicationStatus ->+  -- | 'applicationVersionId'+  Prelude.Natural ->+  -- | 'runtimeEnvironment'+  RuntimeEnvironment ->+  ApplicationSummary+newApplicationSummary+  pApplicationName_+  pApplicationARN_+  pApplicationStatus_+  pApplicationVersionId_+  pRuntimeEnvironment_ =+    ApplicationSummary'+      { applicationMode =+          Prelude.Nothing,+        applicationName = pApplicationName_,+        applicationARN = pApplicationARN_,+        applicationStatus = pApplicationStatus_,+        applicationVersionId = pApplicationVersionId_,+        runtimeEnvironment = pRuntimeEnvironment_+      }++-- | For a Kinesis Data Analytics for Apache Flink application, the mode is+-- @STREAMING@. For a Kinesis Data Analytics Studio notebook, it is+-- @INTERACTIVE@.+applicationSummary_applicationMode :: Lens.Lens' ApplicationSummary (Prelude.Maybe ApplicationMode)+applicationSummary_applicationMode = Lens.lens (\ApplicationSummary' {applicationMode} -> applicationMode) (\s@ApplicationSummary' {} a -> s {applicationMode = a} :: ApplicationSummary)++-- | The name of the application.+applicationSummary_applicationName :: Lens.Lens' ApplicationSummary Prelude.Text+applicationSummary_applicationName = Lens.lens (\ApplicationSummary' {applicationName} -> applicationName) (\s@ApplicationSummary' {} a -> s {applicationName = a} :: ApplicationSummary)++-- | The 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 status of the application.+applicationSummary_applicationStatus :: Lens.Lens' ApplicationSummary ApplicationStatus+applicationSummary_applicationStatus = Lens.lens (\ApplicationSummary' {applicationStatus} -> applicationStatus) (\s@ApplicationSummary' {} a -> s {applicationStatus = a} :: ApplicationSummary)++-- | Provides the current application version.+applicationSummary_applicationVersionId :: Lens.Lens' ApplicationSummary Prelude.Natural+applicationSummary_applicationVersionId = Lens.lens (\ApplicationSummary' {applicationVersionId} -> applicationVersionId) (\s@ApplicationSummary' {} a -> s {applicationVersionId = a} :: ApplicationSummary)++-- | The runtime environment for the application.+applicationSummary_runtimeEnvironment :: Lens.Lens' ApplicationSummary RuntimeEnvironment+applicationSummary_runtimeEnvironment = Lens.lens (\ApplicationSummary' {runtimeEnvironment} -> runtimeEnvironment) (\s@ApplicationSummary' {} a -> s {runtimeEnvironment = a} :: ApplicationSummary)++instance Data.FromJSON ApplicationSummary where+  parseJSON =+    Data.withObject+      "ApplicationSummary"+      ( \x ->+          ApplicationSummary'+            Prelude.<$> (x Data..:? "ApplicationMode")+            Prelude.<*> (x Data..: "ApplicationName")+            Prelude.<*> (x Data..: "ApplicationARN")+            Prelude.<*> (x Data..: "ApplicationStatus")+            Prelude.<*> (x Data..: "ApplicationVersionId")+            Prelude.<*> (x Data..: "RuntimeEnvironment")+      )++instance Prelude.Hashable ApplicationSummary where+  hashWithSalt _salt ApplicationSummary' {..} =+    _salt+      `Prelude.hashWithSalt` applicationMode+      `Prelude.hashWithSalt` applicationName+      `Prelude.hashWithSalt` applicationARN+      `Prelude.hashWithSalt` applicationStatus+      `Prelude.hashWithSalt` applicationVersionId+      `Prelude.hashWithSalt` runtimeEnvironment++instance Prelude.NFData ApplicationSummary where+  rnf ApplicationSummary' {..} =+    Prelude.rnf applicationMode+      `Prelude.seq` Prelude.rnf applicationName+      `Prelude.seq` Prelude.rnf applicationARN+      `Prelude.seq` Prelude.rnf applicationStatus+      `Prelude.seq` Prelude.rnf applicationVersionId+      `Prelude.seq` Prelude.rnf runtimeEnvironment
+ gen/Amazonka/KinesisAnalyticsV2/Types/ApplicationVersionSummary.hs view
@@ -0,0 +1,95 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.KinesisAnalyticsV2.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.KinesisAnalyticsV2.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.KinesisAnalyticsV2.Types.ApplicationStatus+import qualified Amazonka.Prelude as Prelude++-- | The summary of the application version.+--+-- /See:/ 'newApplicationVersionSummary' smart constructor.+data ApplicationVersionSummary = ApplicationVersionSummary'+  { -- | The ID of the application version. Kinesis Data Analytics updates the+    -- @ApplicationVersionId@ each time you update the application.+    applicationVersionId :: Prelude.Natural,+    -- | The status of the application.+    applicationStatus :: ApplicationStatus+  }+  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:+--+-- 'applicationVersionId', 'applicationVersionSummary_applicationVersionId' - The ID of the application version. Kinesis Data Analytics updates the+-- @ApplicationVersionId@ each time you update the application.+--+-- 'applicationStatus', 'applicationVersionSummary_applicationStatus' - The status of the application.+newApplicationVersionSummary ::+  -- | 'applicationVersionId'+  Prelude.Natural ->+  -- | 'applicationStatus'+  ApplicationStatus ->+  ApplicationVersionSummary+newApplicationVersionSummary+  pApplicationVersionId_+  pApplicationStatus_ =+    ApplicationVersionSummary'+      { applicationVersionId =+          pApplicationVersionId_,+        applicationStatus = pApplicationStatus_+      }++-- | The ID of the application version. Kinesis Data Analytics updates the+-- @ApplicationVersionId@ each time you update the application.+applicationVersionSummary_applicationVersionId :: Lens.Lens' ApplicationVersionSummary Prelude.Natural+applicationVersionSummary_applicationVersionId = Lens.lens (\ApplicationVersionSummary' {applicationVersionId} -> applicationVersionId) (\s@ApplicationVersionSummary' {} a -> s {applicationVersionId = a} :: ApplicationVersionSummary)++-- | The status of the application.+applicationVersionSummary_applicationStatus :: Lens.Lens' ApplicationVersionSummary ApplicationStatus+applicationVersionSummary_applicationStatus = Lens.lens (\ApplicationVersionSummary' {applicationStatus} -> applicationStatus) (\s@ApplicationVersionSummary' {} a -> s {applicationStatus = a} :: ApplicationVersionSummary)++instance Data.FromJSON ApplicationVersionSummary where+  parseJSON =+    Data.withObject+      "ApplicationVersionSummary"+      ( \x ->+          ApplicationVersionSummary'+            Prelude.<$> (x Data..: "ApplicationVersionId")+            Prelude.<*> (x Data..: "ApplicationStatus")+      )++instance Prelude.Hashable ApplicationVersionSummary where+  hashWithSalt _salt ApplicationVersionSummary' {..} =+    _salt+      `Prelude.hashWithSalt` applicationVersionId+      `Prelude.hashWithSalt` applicationStatus++instance Prelude.NFData ApplicationVersionSummary where+  rnf ApplicationVersionSummary' {..} =+    Prelude.rnf applicationVersionId+      `Prelude.seq` Prelude.rnf applicationStatus
+ gen/Amazonka/KinesisAnalyticsV2/Types/ArtifactType.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.KinesisAnalyticsV2.Types.ArtifactType+-- 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.KinesisAnalyticsV2.Types.ArtifactType+  ( ArtifactType+      ( ..,+        ArtifactType_DEPENDENCY_JAR,+        ArtifactType_UDF+      ),+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype ArtifactType = ArtifactType'+  { fromArtifactType ::+      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 ArtifactType_DEPENDENCY_JAR :: ArtifactType+pattern ArtifactType_DEPENDENCY_JAR = ArtifactType' "DEPENDENCY_JAR"++pattern ArtifactType_UDF :: ArtifactType+pattern ArtifactType_UDF = ArtifactType' "UDF"++{-# COMPLETE+  ArtifactType_DEPENDENCY_JAR,+  ArtifactType_UDF,+  ArtifactType'+  #-}
+ gen/Amazonka/KinesisAnalyticsV2/Types/CSVMappingParameters.hs view
@@ -0,0 +1,118 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.KinesisAnalyticsV2.Types.CSVMappingParameters+-- 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.KinesisAnalyticsV2.Types.CSVMappingParameters 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++-- | For a SQL-based Kinesis Data Analytics application, provides additional+-- mapping information when the record format uses delimiters, such as CSV.+-- For example, the following sample records use CSV format, where the+-- records use the /\'\\n\'/ as the row delimiter and a comma (\",\") as+-- the column delimiter:+--+-- @\"name1\", \"address1\"@+--+-- @\"name2\", \"address2\"@+--+-- /See:/ 'newCSVMappingParameters' smart constructor.+data CSVMappingParameters = CSVMappingParameters'+  { -- | The row delimiter. For example, in a CSV format, /\'\\n\'/ is the+    -- typical row delimiter.+    recordRowDelimiter :: Prelude.Text,+    -- | The column delimiter. For example, in a CSV format, a comma (\",\") is+    -- the typical column delimiter.+    recordColumnDelimiter :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CSVMappingParameters' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'recordRowDelimiter', 'cSVMappingParameters_recordRowDelimiter' - The row delimiter. For example, in a CSV format, /\'\\n\'/ is the+-- typical row delimiter.+--+-- 'recordColumnDelimiter', 'cSVMappingParameters_recordColumnDelimiter' - The column delimiter. For example, in a CSV format, a comma (\",\") is+-- the typical column delimiter.+newCSVMappingParameters ::+  -- | 'recordRowDelimiter'+  Prelude.Text ->+  -- | 'recordColumnDelimiter'+  Prelude.Text ->+  CSVMappingParameters+newCSVMappingParameters+  pRecordRowDelimiter_+  pRecordColumnDelimiter_ =+    CSVMappingParameters'+      { recordRowDelimiter =+          pRecordRowDelimiter_,+        recordColumnDelimiter = pRecordColumnDelimiter_+      }++-- | The row delimiter. For example, in a CSV format, /\'\\n\'/ is the+-- typical row delimiter.+cSVMappingParameters_recordRowDelimiter :: Lens.Lens' CSVMappingParameters Prelude.Text+cSVMappingParameters_recordRowDelimiter = Lens.lens (\CSVMappingParameters' {recordRowDelimiter} -> recordRowDelimiter) (\s@CSVMappingParameters' {} a -> s {recordRowDelimiter = a} :: CSVMappingParameters)++-- | The column delimiter. For example, in a CSV format, a comma (\",\") is+-- the typical column delimiter.+cSVMappingParameters_recordColumnDelimiter :: Lens.Lens' CSVMappingParameters Prelude.Text+cSVMappingParameters_recordColumnDelimiter = Lens.lens (\CSVMappingParameters' {recordColumnDelimiter} -> recordColumnDelimiter) (\s@CSVMappingParameters' {} a -> s {recordColumnDelimiter = a} :: CSVMappingParameters)++instance Data.FromJSON CSVMappingParameters where+  parseJSON =+    Data.withObject+      "CSVMappingParameters"+      ( \x ->+          CSVMappingParameters'+            Prelude.<$> (x Data..: "RecordRowDelimiter")+            Prelude.<*> (x Data..: "RecordColumnDelimiter")+      )++instance Prelude.Hashable CSVMappingParameters where+  hashWithSalt _salt CSVMappingParameters' {..} =+    _salt+      `Prelude.hashWithSalt` recordRowDelimiter+      `Prelude.hashWithSalt` recordColumnDelimiter++instance Prelude.NFData CSVMappingParameters where+  rnf CSVMappingParameters' {..} =+    Prelude.rnf recordRowDelimiter+      `Prelude.seq` Prelude.rnf recordColumnDelimiter++instance Data.ToJSON CSVMappingParameters where+  toJSON CSVMappingParameters' {..} =+    Data.object+      ( Prelude.catMaybes+          [ Prelude.Just+              ("RecordRowDelimiter" Data..= recordRowDelimiter),+            Prelude.Just+              ( "RecordColumnDelimiter"+                  Data..= recordColumnDelimiter+              )+          ]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/CatalogConfiguration.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.KinesisAnalyticsV2.Types.CatalogConfiguration+-- 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.KinesisAnalyticsV2.Types.CatalogConfiguration where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types.GlueDataCatalogConfiguration+import qualified Amazonka.Prelude as Prelude++-- | The configuration parameters for the default Amazon Glue database. You+-- use this database for SQL queries that you write in a Kinesis Data+-- Analytics Studio notebook.+--+-- /See:/ 'newCatalogConfiguration' smart constructor.+data CatalogConfiguration = CatalogConfiguration'+  { -- | The configuration parameters for the default Amazon Glue database. You+    -- use this database for Apache Flink SQL queries and table API transforms+    -- that you write in a Kinesis Data Analytics Studio notebook.+    glueDataCatalogConfiguration :: GlueDataCatalogConfiguration+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CatalogConfiguration' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'glueDataCatalogConfiguration', 'catalogConfiguration_glueDataCatalogConfiguration' - The configuration parameters for the default Amazon Glue database. You+-- use this database for Apache Flink SQL queries and table API transforms+-- that you write in a Kinesis Data Analytics Studio notebook.+newCatalogConfiguration ::+  -- | 'glueDataCatalogConfiguration'+  GlueDataCatalogConfiguration ->+  CatalogConfiguration+newCatalogConfiguration+  pGlueDataCatalogConfiguration_ =+    CatalogConfiguration'+      { glueDataCatalogConfiguration =+          pGlueDataCatalogConfiguration_+      }++-- | The configuration parameters for the default Amazon Glue database. You+-- use this database for Apache Flink SQL queries and table API transforms+-- that you write in a Kinesis Data Analytics Studio notebook.+catalogConfiguration_glueDataCatalogConfiguration :: Lens.Lens' CatalogConfiguration GlueDataCatalogConfiguration+catalogConfiguration_glueDataCatalogConfiguration = Lens.lens (\CatalogConfiguration' {glueDataCatalogConfiguration} -> glueDataCatalogConfiguration) (\s@CatalogConfiguration' {} a -> s {glueDataCatalogConfiguration = a} :: CatalogConfiguration)++instance Prelude.Hashable CatalogConfiguration where+  hashWithSalt _salt CatalogConfiguration' {..} =+    _salt+      `Prelude.hashWithSalt` glueDataCatalogConfiguration++instance Prelude.NFData CatalogConfiguration where+  rnf CatalogConfiguration' {..} =+    Prelude.rnf glueDataCatalogConfiguration++instance Data.ToJSON CatalogConfiguration where+  toJSON CatalogConfiguration' {..} =+    Data.object+      ( Prelude.catMaybes+          [ Prelude.Just+              ( "GlueDataCatalogConfiguration"+                  Data..= glueDataCatalogConfiguration+              )+          ]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/CatalogConfigurationDescription.hs view
@@ -0,0 +1,98 @@+{-# 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.KinesisAnalyticsV2.Types.CatalogConfigurationDescription+-- 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.KinesisAnalyticsV2.Types.CatalogConfigurationDescription where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types.GlueDataCatalogConfigurationDescription+import qualified Amazonka.Prelude as Prelude++-- | The configuration parameters for the default Amazon Glue database. You+-- use this database for Apache Flink SQL queries and table API transforms+-- that you write in a Kinesis Data Analytics Studio notebook.+--+-- /See:/ 'newCatalogConfigurationDescription' smart constructor.+data CatalogConfigurationDescription = CatalogConfigurationDescription'+  { -- | The configuration parameters for the default Amazon Glue database. You+    -- use this database for SQL queries that you write in a Kinesis Data+    -- Analytics Studio notebook.+    glueDataCatalogConfigurationDescription :: GlueDataCatalogConfigurationDescription+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CatalogConfigurationDescription' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'glueDataCatalogConfigurationDescription', 'catalogConfigurationDescription_glueDataCatalogConfigurationDescription' - The configuration parameters for the default Amazon Glue database. You+-- use this database for SQL queries that you write in a Kinesis Data+-- Analytics Studio notebook.+newCatalogConfigurationDescription ::+  -- | 'glueDataCatalogConfigurationDescription'+  GlueDataCatalogConfigurationDescription ->+  CatalogConfigurationDescription+newCatalogConfigurationDescription+  pGlueDataCatalogConfigurationDescription_ =+    CatalogConfigurationDescription'+      { glueDataCatalogConfigurationDescription =+          pGlueDataCatalogConfigurationDescription_+      }++-- | The configuration parameters for the default Amazon Glue database. You+-- use this database for SQL queries that you write in a Kinesis Data+-- Analytics Studio notebook.+catalogConfigurationDescription_glueDataCatalogConfigurationDescription :: Lens.Lens' CatalogConfigurationDescription GlueDataCatalogConfigurationDescription+catalogConfigurationDescription_glueDataCatalogConfigurationDescription = Lens.lens (\CatalogConfigurationDescription' {glueDataCatalogConfigurationDescription} -> glueDataCatalogConfigurationDescription) (\s@CatalogConfigurationDescription' {} a -> s {glueDataCatalogConfigurationDescription = a} :: CatalogConfigurationDescription)++instance+  Data.FromJSON+    CatalogConfigurationDescription+  where+  parseJSON =+    Data.withObject+      "CatalogConfigurationDescription"+      ( \x ->+          CatalogConfigurationDescription'+            Prelude.<$> ( x+                            Data..: "GlueDataCatalogConfigurationDescription"+                        )+      )++instance+  Prelude.Hashable+    CatalogConfigurationDescription+  where+  hashWithSalt+    _salt+    CatalogConfigurationDescription' {..} =+      _salt+        `Prelude.hashWithSalt` glueDataCatalogConfigurationDescription++instance+  Prelude.NFData+    CatalogConfigurationDescription+  where+  rnf CatalogConfigurationDescription' {..} =+    Prelude.rnf glueDataCatalogConfigurationDescription
+ gen/Amazonka/KinesisAnalyticsV2/Types/CatalogConfigurationUpdate.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.KinesisAnalyticsV2.Types.CatalogConfigurationUpdate+-- 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.KinesisAnalyticsV2.Types.CatalogConfigurationUpdate where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types.GlueDataCatalogConfigurationUpdate+import qualified Amazonka.Prelude as Prelude++-- | Updates to the configuration parameters for the default Amazon Glue+-- database. You use this database for SQL queries that you write in a+-- Kinesis Data Analytics Studio notebook.+--+-- /See:/ 'newCatalogConfigurationUpdate' smart constructor.+data CatalogConfigurationUpdate = CatalogConfigurationUpdate'+  { -- | Updates to the configuration parameters for the default Amazon Glue+    -- database. You use this database for SQL queries that you write in a+    -- Kinesis Data Analytics Studio notebook.+    glueDataCatalogConfigurationUpdate :: GlueDataCatalogConfigurationUpdate+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CatalogConfigurationUpdate' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'glueDataCatalogConfigurationUpdate', 'catalogConfigurationUpdate_glueDataCatalogConfigurationUpdate' - Updates to the configuration parameters for the default Amazon Glue+-- database. You use this database for SQL queries that you write in a+-- Kinesis Data Analytics Studio notebook.+newCatalogConfigurationUpdate ::+  -- | 'glueDataCatalogConfigurationUpdate'+  GlueDataCatalogConfigurationUpdate ->+  CatalogConfigurationUpdate+newCatalogConfigurationUpdate+  pGlueDataCatalogConfigurationUpdate_ =+    CatalogConfigurationUpdate'+      { glueDataCatalogConfigurationUpdate =+          pGlueDataCatalogConfigurationUpdate_+      }++-- | Updates to the configuration parameters for the default Amazon Glue+-- database. You use this database for SQL queries that you write in a+-- Kinesis Data Analytics Studio notebook.+catalogConfigurationUpdate_glueDataCatalogConfigurationUpdate :: Lens.Lens' CatalogConfigurationUpdate GlueDataCatalogConfigurationUpdate+catalogConfigurationUpdate_glueDataCatalogConfigurationUpdate = Lens.lens (\CatalogConfigurationUpdate' {glueDataCatalogConfigurationUpdate} -> glueDataCatalogConfigurationUpdate) (\s@CatalogConfigurationUpdate' {} a -> s {glueDataCatalogConfigurationUpdate = a} :: CatalogConfigurationUpdate)++instance Prelude.Hashable CatalogConfigurationUpdate where+  hashWithSalt _salt CatalogConfigurationUpdate' {..} =+    _salt+      `Prelude.hashWithSalt` glueDataCatalogConfigurationUpdate++instance Prelude.NFData CatalogConfigurationUpdate where+  rnf CatalogConfigurationUpdate' {..} =+    Prelude.rnf glueDataCatalogConfigurationUpdate++instance Data.ToJSON CatalogConfigurationUpdate where+  toJSON CatalogConfigurationUpdate' {..} =+    Data.object+      ( Prelude.catMaybes+          [ Prelude.Just+              ( "GlueDataCatalogConfigurationUpdate"+                  Data..= glueDataCatalogConfigurationUpdate+              )+          ]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/CheckpointConfiguration.hs view
@@ -0,0 +1,222 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.KinesisAnalyticsV2.Types.CheckpointConfiguration+-- 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.KinesisAnalyticsV2.Types.CheckpointConfiguration where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types.ConfigurationType+import qualified Amazonka.Prelude as Prelude++-- | Describes an application\'s checkpointing configuration. Checkpointing+-- is the process of persisting application state for fault tolerance. For+-- more information, see+-- <https://ci.apache.org/projects/flink/flink-docs-release-1.8/concepts/programming-model.html#checkpoints-for-fault-tolerance Checkpoints for Fault Tolerance>+-- in the+-- <https://ci.apache.org/projects/flink/flink-docs-release-1.8/ Apache Flink Documentation>.+--+-- /See:/ 'newCheckpointConfiguration' smart constructor.+data CheckpointConfiguration = CheckpointConfiguration'+  { -- | Describes the interval in milliseconds between checkpoint operations.+    --+    -- If @CheckpointConfiguration.ConfigurationType@ is @DEFAULT@, the+    -- application will use a @CheckpointInterval@ value of 60000, even if this+    -- value is set to another value using this API or in application code.+    checkpointInterval :: Prelude.Maybe Prelude.Natural,+    -- | Describes whether checkpointing is enabled for a Flink-based Kinesis+    -- Data Analytics application.+    --+    -- If @CheckpointConfiguration.ConfigurationType@ is @DEFAULT@, the+    -- application will use a @CheckpointingEnabled@ value of @true@, even if+    -- this value is set to another value using this API or in application+    -- code.+    checkpointingEnabled :: Prelude.Maybe Prelude.Bool,+    -- | Describes the minimum time in milliseconds after a checkpoint operation+    -- completes that a new checkpoint operation can start. If a checkpoint+    -- operation takes longer than the @CheckpointInterval@, the application+    -- otherwise performs continual checkpoint operations. For more+    -- information, see+    -- <https://ci.apache.org/projects/flink/flink-docs-release-1.8/ops/state/large_state_tuning.html#tuning-checkpointing Tuning Checkpointing>+    -- in the+    -- <https://ci.apache.org/projects/flink/flink-docs-release-1.8/ Apache Flink Documentation>.+    --+    -- If @CheckpointConfiguration.ConfigurationType@ is @DEFAULT@, the+    -- application will use a @MinPauseBetweenCheckpoints@ value of 5000, even+    -- if this value is set using this API or in application code.+    minPauseBetweenCheckpoints :: Prelude.Maybe Prelude.Natural,+    -- | Describes whether the application uses Kinesis Data Analytics\' default+    -- checkpointing behavior. You must set this property to @CUSTOM@ in order+    -- to set the @CheckpointingEnabled@, @CheckpointInterval@, or+    -- @MinPauseBetweenCheckpoints@ parameters.+    --+    -- If this value is set to @DEFAULT@, the application will use the+    -- following values, even if they are set to other values using APIs or+    -- application code:+    --+    -- -   __CheckpointingEnabled:__ true+    --+    -- -   __CheckpointInterval:__ 60000+    --+    -- -   __MinPauseBetweenCheckpoints:__ 5000+    configurationType :: ConfigurationType+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CheckpointConfiguration' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'checkpointInterval', 'checkpointConfiguration_checkpointInterval' - Describes the interval in milliseconds between checkpoint operations.+--+-- If @CheckpointConfiguration.ConfigurationType@ is @DEFAULT@, the+-- application will use a @CheckpointInterval@ value of 60000, even if this+-- value is set to another value using this API or in application code.+--+-- 'checkpointingEnabled', 'checkpointConfiguration_checkpointingEnabled' - Describes whether checkpointing is enabled for a Flink-based Kinesis+-- Data Analytics application.+--+-- If @CheckpointConfiguration.ConfigurationType@ is @DEFAULT@, the+-- application will use a @CheckpointingEnabled@ value of @true@, even if+-- this value is set to another value using this API or in application+-- code.+--+-- 'minPauseBetweenCheckpoints', 'checkpointConfiguration_minPauseBetweenCheckpoints' - Describes the minimum time in milliseconds after a checkpoint operation+-- completes that a new checkpoint operation can start. If a checkpoint+-- operation takes longer than the @CheckpointInterval@, the application+-- otherwise performs continual checkpoint operations. For more+-- information, see+-- <https://ci.apache.org/projects/flink/flink-docs-release-1.8/ops/state/large_state_tuning.html#tuning-checkpointing Tuning Checkpointing>+-- in the+-- <https://ci.apache.org/projects/flink/flink-docs-release-1.8/ Apache Flink Documentation>.+--+-- If @CheckpointConfiguration.ConfigurationType@ is @DEFAULT@, the+-- application will use a @MinPauseBetweenCheckpoints@ value of 5000, even+-- if this value is set using this API or in application code.+--+-- 'configurationType', 'checkpointConfiguration_configurationType' - Describes whether the application uses Kinesis Data Analytics\' default+-- checkpointing behavior. You must set this property to @CUSTOM@ in order+-- to set the @CheckpointingEnabled@, @CheckpointInterval@, or+-- @MinPauseBetweenCheckpoints@ parameters.+--+-- If this value is set to @DEFAULT@, the application will use the+-- following values, even if they are set to other values using APIs or+-- application code:+--+-- -   __CheckpointingEnabled:__ true+--+-- -   __CheckpointInterval:__ 60000+--+-- -   __MinPauseBetweenCheckpoints:__ 5000+newCheckpointConfiguration ::+  -- | 'configurationType'+  ConfigurationType ->+  CheckpointConfiguration+newCheckpointConfiguration pConfigurationType_ =+  CheckpointConfiguration'+    { checkpointInterval =+        Prelude.Nothing,+      checkpointingEnabled = Prelude.Nothing,+      minPauseBetweenCheckpoints = Prelude.Nothing,+      configurationType = pConfigurationType_+    }++-- | Describes the interval in milliseconds between checkpoint operations.+--+-- If @CheckpointConfiguration.ConfigurationType@ is @DEFAULT@, the+-- application will use a @CheckpointInterval@ value of 60000, even if this+-- value is set to another value using this API or in application code.+checkpointConfiguration_checkpointInterval :: Lens.Lens' CheckpointConfiguration (Prelude.Maybe Prelude.Natural)+checkpointConfiguration_checkpointInterval = Lens.lens (\CheckpointConfiguration' {checkpointInterval} -> checkpointInterval) (\s@CheckpointConfiguration' {} a -> s {checkpointInterval = a} :: CheckpointConfiguration)++-- | Describes whether checkpointing is enabled for a Flink-based Kinesis+-- Data Analytics application.+--+-- If @CheckpointConfiguration.ConfigurationType@ is @DEFAULT@, the+-- application will use a @CheckpointingEnabled@ value of @true@, even if+-- this value is set to another value using this API or in application+-- code.+checkpointConfiguration_checkpointingEnabled :: Lens.Lens' CheckpointConfiguration (Prelude.Maybe Prelude.Bool)+checkpointConfiguration_checkpointingEnabled = Lens.lens (\CheckpointConfiguration' {checkpointingEnabled} -> checkpointingEnabled) (\s@CheckpointConfiguration' {} a -> s {checkpointingEnabled = a} :: CheckpointConfiguration)++-- | Describes the minimum time in milliseconds after a checkpoint operation+-- completes that a new checkpoint operation can start. If a checkpoint+-- operation takes longer than the @CheckpointInterval@, the application+-- otherwise performs continual checkpoint operations. For more+-- information, see+-- <https://ci.apache.org/projects/flink/flink-docs-release-1.8/ops/state/large_state_tuning.html#tuning-checkpointing Tuning Checkpointing>+-- in the+-- <https://ci.apache.org/projects/flink/flink-docs-release-1.8/ Apache Flink Documentation>.+--+-- If @CheckpointConfiguration.ConfigurationType@ is @DEFAULT@, the+-- application will use a @MinPauseBetweenCheckpoints@ value of 5000, even+-- if this value is set using this API or in application code.+checkpointConfiguration_minPauseBetweenCheckpoints :: Lens.Lens' CheckpointConfiguration (Prelude.Maybe Prelude.Natural)+checkpointConfiguration_minPauseBetweenCheckpoints = Lens.lens (\CheckpointConfiguration' {minPauseBetweenCheckpoints} -> minPauseBetweenCheckpoints) (\s@CheckpointConfiguration' {} a -> s {minPauseBetweenCheckpoints = a} :: CheckpointConfiguration)++-- | Describes whether the application uses Kinesis Data Analytics\' default+-- checkpointing behavior. You must set this property to @CUSTOM@ in order+-- to set the @CheckpointingEnabled@, @CheckpointInterval@, or+-- @MinPauseBetweenCheckpoints@ parameters.+--+-- If this value is set to @DEFAULT@, the application will use the+-- following values, even if they are set to other values using APIs or+-- application code:+--+-- -   __CheckpointingEnabled:__ true+--+-- -   __CheckpointInterval:__ 60000+--+-- -   __MinPauseBetweenCheckpoints:__ 5000+checkpointConfiguration_configurationType :: Lens.Lens' CheckpointConfiguration ConfigurationType+checkpointConfiguration_configurationType = Lens.lens (\CheckpointConfiguration' {configurationType} -> configurationType) (\s@CheckpointConfiguration' {} a -> s {configurationType = a} :: CheckpointConfiguration)++instance Prelude.Hashable CheckpointConfiguration where+  hashWithSalt _salt CheckpointConfiguration' {..} =+    _salt+      `Prelude.hashWithSalt` checkpointInterval+      `Prelude.hashWithSalt` checkpointingEnabled+      `Prelude.hashWithSalt` minPauseBetweenCheckpoints+      `Prelude.hashWithSalt` configurationType++instance Prelude.NFData CheckpointConfiguration where+  rnf CheckpointConfiguration' {..} =+    Prelude.rnf checkpointInterval+      `Prelude.seq` Prelude.rnf checkpointingEnabled+      `Prelude.seq` Prelude.rnf minPauseBetweenCheckpoints+      `Prelude.seq` Prelude.rnf configurationType++instance Data.ToJSON CheckpointConfiguration where+  toJSON CheckpointConfiguration' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("CheckpointInterval" Data..=)+              Prelude.<$> checkpointInterval,+            ("CheckpointingEnabled" Data..=)+              Prelude.<$> checkpointingEnabled,+            ("MinPauseBetweenCheckpoints" Data..=)+              Prelude.<$> minPauseBetweenCheckpoints,+            Prelude.Just+              ("ConfigurationType" Data..= configurationType)+          ]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/CheckpointConfigurationDescription.hs view
@@ -0,0 +1,201 @@+{-# 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.KinesisAnalyticsV2.Types.CheckpointConfigurationDescription+-- 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.KinesisAnalyticsV2.Types.CheckpointConfigurationDescription where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types.ConfigurationType+import qualified Amazonka.Prelude as Prelude++-- | Describes checkpointing parameters for a Flink-based Kinesis Data+-- Analytics application.+--+-- /See:/ 'newCheckpointConfigurationDescription' smart constructor.+data CheckpointConfigurationDescription = CheckpointConfigurationDescription'+  { -- | Describes the interval in milliseconds between checkpoint operations.+    --+    -- If @CheckpointConfiguration.ConfigurationType@ is @DEFAULT@, the+    -- application will use a @CheckpointInterval@ value of 60000, even if this+    -- value is set to another value using this API or in application code.+    checkpointInterval :: Prelude.Maybe Prelude.Natural,+    -- | Describes whether checkpointing is enabled for a Flink-based Kinesis+    -- Data Analytics application.+    --+    -- If @CheckpointConfiguration.ConfigurationType@ is @DEFAULT@, the+    -- application will use a @CheckpointingEnabled@ value of @true@, even if+    -- this value is set to another value using this API or in application+    -- code.+    checkpointingEnabled :: Prelude.Maybe Prelude.Bool,+    -- | Describes whether the application uses the default checkpointing+    -- behavior in Kinesis Data Analytics.+    --+    -- If this value is set to @DEFAULT@, the application will use the+    -- following values, even if they are set to other values using APIs or+    -- application code:+    --+    -- -   __CheckpointingEnabled:__ true+    --+    -- -   __CheckpointInterval:__ 60000+    --+    -- -   __MinPauseBetweenCheckpoints:__ 5000+    configurationType :: Prelude.Maybe ConfigurationType,+    -- | Describes the minimum time in milliseconds after a checkpoint operation+    -- completes that a new checkpoint operation can start.+    --+    -- If @CheckpointConfiguration.ConfigurationType@ is @DEFAULT@, the+    -- application will use a @MinPauseBetweenCheckpoints@ value of 5000, even+    -- if this value is set using this API or in application code.+    minPauseBetweenCheckpoints :: Prelude.Maybe Prelude.Natural+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CheckpointConfigurationDescription' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'checkpointInterval', 'checkpointConfigurationDescription_checkpointInterval' - Describes the interval in milliseconds between checkpoint operations.+--+-- If @CheckpointConfiguration.ConfigurationType@ is @DEFAULT@, the+-- application will use a @CheckpointInterval@ value of 60000, even if this+-- value is set to another value using this API or in application code.+--+-- 'checkpointingEnabled', 'checkpointConfigurationDescription_checkpointingEnabled' - Describes whether checkpointing is enabled for a Flink-based Kinesis+-- Data Analytics application.+--+-- If @CheckpointConfiguration.ConfigurationType@ is @DEFAULT@, the+-- application will use a @CheckpointingEnabled@ value of @true@, even if+-- this value is set to another value using this API or in application+-- code.+--+-- 'configurationType', 'checkpointConfigurationDescription_configurationType' - Describes whether the application uses the default checkpointing+-- behavior in Kinesis Data Analytics.+--+-- If this value is set to @DEFAULT@, the application will use the+-- following values, even if they are set to other values using APIs or+-- application code:+--+-- -   __CheckpointingEnabled:__ true+--+-- -   __CheckpointInterval:__ 60000+--+-- -   __MinPauseBetweenCheckpoints:__ 5000+--+-- 'minPauseBetweenCheckpoints', 'checkpointConfigurationDescription_minPauseBetweenCheckpoints' - Describes the minimum time in milliseconds after a checkpoint operation+-- completes that a new checkpoint operation can start.+--+-- If @CheckpointConfiguration.ConfigurationType@ is @DEFAULT@, the+-- application will use a @MinPauseBetweenCheckpoints@ value of 5000, even+-- if this value is set using this API or in application code.+newCheckpointConfigurationDescription ::+  CheckpointConfigurationDescription+newCheckpointConfigurationDescription =+  CheckpointConfigurationDescription'+    { checkpointInterval =+        Prelude.Nothing,+      checkpointingEnabled = Prelude.Nothing,+      configurationType = Prelude.Nothing,+      minPauseBetweenCheckpoints =+        Prelude.Nothing+    }++-- | Describes the interval in milliseconds between checkpoint operations.+--+-- If @CheckpointConfiguration.ConfigurationType@ is @DEFAULT@, the+-- application will use a @CheckpointInterval@ value of 60000, even if this+-- value is set to another value using this API or in application code.+checkpointConfigurationDescription_checkpointInterval :: Lens.Lens' CheckpointConfigurationDescription (Prelude.Maybe Prelude.Natural)+checkpointConfigurationDescription_checkpointInterval = Lens.lens (\CheckpointConfigurationDescription' {checkpointInterval} -> checkpointInterval) (\s@CheckpointConfigurationDescription' {} a -> s {checkpointInterval = a} :: CheckpointConfigurationDescription)++-- | Describes whether checkpointing is enabled for a Flink-based Kinesis+-- Data Analytics application.+--+-- If @CheckpointConfiguration.ConfigurationType@ is @DEFAULT@, the+-- application will use a @CheckpointingEnabled@ value of @true@, even if+-- this value is set to another value using this API or in application+-- code.+checkpointConfigurationDescription_checkpointingEnabled :: Lens.Lens' CheckpointConfigurationDescription (Prelude.Maybe Prelude.Bool)+checkpointConfigurationDescription_checkpointingEnabled = Lens.lens (\CheckpointConfigurationDescription' {checkpointingEnabled} -> checkpointingEnabled) (\s@CheckpointConfigurationDescription' {} a -> s {checkpointingEnabled = a} :: CheckpointConfigurationDescription)++-- | Describes whether the application uses the default checkpointing+-- behavior in Kinesis Data Analytics.+--+-- If this value is set to @DEFAULT@, the application will use the+-- following values, even if they are set to other values using APIs or+-- application code:+--+-- -   __CheckpointingEnabled:__ true+--+-- -   __CheckpointInterval:__ 60000+--+-- -   __MinPauseBetweenCheckpoints:__ 5000+checkpointConfigurationDescription_configurationType :: Lens.Lens' CheckpointConfigurationDescription (Prelude.Maybe ConfigurationType)+checkpointConfigurationDescription_configurationType = Lens.lens (\CheckpointConfigurationDescription' {configurationType} -> configurationType) (\s@CheckpointConfigurationDescription' {} a -> s {configurationType = a} :: CheckpointConfigurationDescription)++-- | Describes the minimum time in milliseconds after a checkpoint operation+-- completes that a new checkpoint operation can start.+--+-- If @CheckpointConfiguration.ConfigurationType@ is @DEFAULT@, the+-- application will use a @MinPauseBetweenCheckpoints@ value of 5000, even+-- if this value is set using this API or in application code.+checkpointConfigurationDescription_minPauseBetweenCheckpoints :: Lens.Lens' CheckpointConfigurationDescription (Prelude.Maybe Prelude.Natural)+checkpointConfigurationDescription_minPauseBetweenCheckpoints = Lens.lens (\CheckpointConfigurationDescription' {minPauseBetweenCheckpoints} -> minPauseBetweenCheckpoints) (\s@CheckpointConfigurationDescription' {} a -> s {minPauseBetweenCheckpoints = a} :: CheckpointConfigurationDescription)++instance+  Data.FromJSON+    CheckpointConfigurationDescription+  where+  parseJSON =+    Data.withObject+      "CheckpointConfigurationDescription"+      ( \x ->+          CheckpointConfigurationDescription'+            Prelude.<$> (x Data..:? "CheckpointInterval")+            Prelude.<*> (x Data..:? "CheckpointingEnabled")+            Prelude.<*> (x Data..:? "ConfigurationType")+            Prelude.<*> (x Data..:? "MinPauseBetweenCheckpoints")+      )++instance+  Prelude.Hashable+    CheckpointConfigurationDescription+  where+  hashWithSalt+    _salt+    CheckpointConfigurationDescription' {..} =+      _salt+        `Prelude.hashWithSalt` checkpointInterval+        `Prelude.hashWithSalt` checkpointingEnabled+        `Prelude.hashWithSalt` configurationType+        `Prelude.hashWithSalt` minPauseBetweenCheckpoints++instance+  Prelude.NFData+    CheckpointConfigurationDescription+  where+  rnf CheckpointConfigurationDescription' {..} =+    Prelude.rnf checkpointInterval+      `Prelude.seq` Prelude.rnf checkpointingEnabled+      `Prelude.seq` Prelude.rnf configurationType+      `Prelude.seq` Prelude.rnf minPauseBetweenCheckpoints
+ gen/Amazonka/KinesisAnalyticsV2/Types/CheckpointConfigurationUpdate.hs view
@@ -0,0 +1,205 @@+{-# 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.KinesisAnalyticsV2.Types.CheckpointConfigurationUpdate+-- 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.KinesisAnalyticsV2.Types.CheckpointConfigurationUpdate where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types.ConfigurationType+import qualified Amazonka.Prelude as Prelude++-- | Describes updates to the checkpointing parameters for a Flink-based+-- Kinesis Data Analytics application.+--+-- /See:/ 'newCheckpointConfigurationUpdate' smart constructor.+data CheckpointConfigurationUpdate = CheckpointConfigurationUpdate'+  { -- | Describes updates to the interval in milliseconds between checkpoint+    -- operations.+    --+    -- If @CheckpointConfiguration.ConfigurationType@ is @DEFAULT@, the+    -- application will use a @CheckpointInterval@ value of 60000, even if this+    -- value is set to another value using this API or in application code.+    checkpointIntervalUpdate :: Prelude.Maybe Prelude.Natural,+    -- | Describes updates to whether checkpointing is enabled for an+    -- application.+    --+    -- If @CheckpointConfiguration.ConfigurationType@ is @DEFAULT@, the+    -- application will use a @CheckpointingEnabled@ value of @true@, even if+    -- this value is set to another value using this API or in application+    -- code.+    checkpointingEnabledUpdate :: Prelude.Maybe Prelude.Bool,+    -- | Describes updates to whether the application uses the default+    -- checkpointing behavior of Kinesis Data Analytics. You must set this+    -- property to @CUSTOM@ in order to set the @CheckpointingEnabled@,+    -- @CheckpointInterval@, or @MinPauseBetweenCheckpoints@ parameters.+    --+    -- If this value is set to @DEFAULT@, the application will use the+    -- following values, even if they are set to other values using APIs or+    -- application code:+    --+    -- -   __CheckpointingEnabled:__ true+    --+    -- -   __CheckpointInterval:__ 60000+    --+    -- -   __MinPauseBetweenCheckpoints:__ 5000+    configurationTypeUpdate :: Prelude.Maybe ConfigurationType,+    -- | Describes updates to the minimum time in milliseconds after a checkpoint+    -- operation completes that a new checkpoint operation can start.+    --+    -- If @CheckpointConfiguration.ConfigurationType@ is @DEFAULT@, the+    -- application will use a @MinPauseBetweenCheckpoints@ value of 5000, even+    -- if this value is set using this API or in application code.+    minPauseBetweenCheckpointsUpdate :: Prelude.Maybe Prelude.Natural+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CheckpointConfigurationUpdate' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'checkpointIntervalUpdate', 'checkpointConfigurationUpdate_checkpointIntervalUpdate' - Describes updates to the interval in milliseconds between checkpoint+-- operations.+--+-- If @CheckpointConfiguration.ConfigurationType@ is @DEFAULT@, the+-- application will use a @CheckpointInterval@ value of 60000, even if this+-- value is set to another value using this API or in application code.+--+-- 'checkpointingEnabledUpdate', 'checkpointConfigurationUpdate_checkpointingEnabledUpdate' - Describes updates to whether checkpointing is enabled for an+-- application.+--+-- If @CheckpointConfiguration.ConfigurationType@ is @DEFAULT@, the+-- application will use a @CheckpointingEnabled@ value of @true@, even if+-- this value is set to another value using this API or in application+-- code.+--+-- 'configurationTypeUpdate', 'checkpointConfigurationUpdate_configurationTypeUpdate' - Describes updates to whether the application uses the default+-- checkpointing behavior of Kinesis Data Analytics. You must set this+-- property to @CUSTOM@ in order to set the @CheckpointingEnabled@,+-- @CheckpointInterval@, or @MinPauseBetweenCheckpoints@ parameters.+--+-- If this value is set to @DEFAULT@, the application will use the+-- following values, even if they are set to other values using APIs or+-- application code:+--+-- -   __CheckpointingEnabled:__ true+--+-- -   __CheckpointInterval:__ 60000+--+-- -   __MinPauseBetweenCheckpoints:__ 5000+--+-- 'minPauseBetweenCheckpointsUpdate', 'checkpointConfigurationUpdate_minPauseBetweenCheckpointsUpdate' - Describes updates to the minimum time in milliseconds after a checkpoint+-- operation completes that a new checkpoint operation can start.+--+-- If @CheckpointConfiguration.ConfigurationType@ is @DEFAULT@, the+-- application will use a @MinPauseBetweenCheckpoints@ value of 5000, even+-- if this value is set using this API or in application code.+newCheckpointConfigurationUpdate ::+  CheckpointConfigurationUpdate+newCheckpointConfigurationUpdate =+  CheckpointConfigurationUpdate'+    { checkpointIntervalUpdate =+        Prelude.Nothing,+      checkpointingEnabledUpdate = Prelude.Nothing,+      configurationTypeUpdate = Prelude.Nothing,+      minPauseBetweenCheckpointsUpdate =+        Prelude.Nothing+    }++-- | Describes updates to the interval in milliseconds between checkpoint+-- operations.+--+-- If @CheckpointConfiguration.ConfigurationType@ is @DEFAULT@, the+-- application will use a @CheckpointInterval@ value of 60000, even if this+-- value is set to another value using this API or in application code.+checkpointConfigurationUpdate_checkpointIntervalUpdate :: Lens.Lens' CheckpointConfigurationUpdate (Prelude.Maybe Prelude.Natural)+checkpointConfigurationUpdate_checkpointIntervalUpdate = Lens.lens (\CheckpointConfigurationUpdate' {checkpointIntervalUpdate} -> checkpointIntervalUpdate) (\s@CheckpointConfigurationUpdate' {} a -> s {checkpointIntervalUpdate = a} :: CheckpointConfigurationUpdate)++-- | Describes updates to whether checkpointing is enabled for an+-- application.+--+-- If @CheckpointConfiguration.ConfigurationType@ is @DEFAULT@, the+-- application will use a @CheckpointingEnabled@ value of @true@, even if+-- this value is set to another value using this API or in application+-- code.+checkpointConfigurationUpdate_checkpointingEnabledUpdate :: Lens.Lens' CheckpointConfigurationUpdate (Prelude.Maybe Prelude.Bool)+checkpointConfigurationUpdate_checkpointingEnabledUpdate = Lens.lens (\CheckpointConfigurationUpdate' {checkpointingEnabledUpdate} -> checkpointingEnabledUpdate) (\s@CheckpointConfigurationUpdate' {} a -> s {checkpointingEnabledUpdate = a} :: CheckpointConfigurationUpdate)++-- | Describes updates to whether the application uses the default+-- checkpointing behavior of Kinesis Data Analytics. You must set this+-- property to @CUSTOM@ in order to set the @CheckpointingEnabled@,+-- @CheckpointInterval@, or @MinPauseBetweenCheckpoints@ parameters.+--+-- If this value is set to @DEFAULT@, the application will use the+-- following values, even if they are set to other values using APIs or+-- application code:+--+-- -   __CheckpointingEnabled:__ true+--+-- -   __CheckpointInterval:__ 60000+--+-- -   __MinPauseBetweenCheckpoints:__ 5000+checkpointConfigurationUpdate_configurationTypeUpdate :: Lens.Lens' CheckpointConfigurationUpdate (Prelude.Maybe ConfigurationType)+checkpointConfigurationUpdate_configurationTypeUpdate = Lens.lens (\CheckpointConfigurationUpdate' {configurationTypeUpdate} -> configurationTypeUpdate) (\s@CheckpointConfigurationUpdate' {} a -> s {configurationTypeUpdate = a} :: CheckpointConfigurationUpdate)++-- | Describes updates to the minimum time in milliseconds after a checkpoint+-- operation completes that a new checkpoint operation can start.+--+-- If @CheckpointConfiguration.ConfigurationType@ is @DEFAULT@, the+-- application will use a @MinPauseBetweenCheckpoints@ value of 5000, even+-- if this value is set using this API or in application code.+checkpointConfigurationUpdate_minPauseBetweenCheckpointsUpdate :: Lens.Lens' CheckpointConfigurationUpdate (Prelude.Maybe Prelude.Natural)+checkpointConfigurationUpdate_minPauseBetweenCheckpointsUpdate = Lens.lens (\CheckpointConfigurationUpdate' {minPauseBetweenCheckpointsUpdate} -> minPauseBetweenCheckpointsUpdate) (\s@CheckpointConfigurationUpdate' {} a -> s {minPauseBetweenCheckpointsUpdate = a} :: CheckpointConfigurationUpdate)++instance+  Prelude.Hashable+    CheckpointConfigurationUpdate+  where+  hashWithSalt _salt CheckpointConfigurationUpdate' {..} =+    _salt+      `Prelude.hashWithSalt` checkpointIntervalUpdate+      `Prelude.hashWithSalt` checkpointingEnabledUpdate+      `Prelude.hashWithSalt` configurationTypeUpdate+      `Prelude.hashWithSalt` minPauseBetweenCheckpointsUpdate++instance Prelude.NFData CheckpointConfigurationUpdate where+  rnf CheckpointConfigurationUpdate' {..} =+    Prelude.rnf checkpointIntervalUpdate+      `Prelude.seq` Prelude.rnf checkpointingEnabledUpdate+      `Prelude.seq` Prelude.rnf configurationTypeUpdate+      `Prelude.seq` Prelude.rnf minPauseBetweenCheckpointsUpdate++instance Data.ToJSON CheckpointConfigurationUpdate where+  toJSON CheckpointConfigurationUpdate' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("CheckpointIntervalUpdate" Data..=)+              Prelude.<$> checkpointIntervalUpdate,+            ("CheckpointingEnabledUpdate" Data..=)+              Prelude.<$> checkpointingEnabledUpdate,+            ("ConfigurationTypeUpdate" Data..=)+              Prelude.<$> configurationTypeUpdate,+            ("MinPauseBetweenCheckpointsUpdate" Data..=)+              Prelude.<$> minPauseBetweenCheckpointsUpdate+          ]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/CloudWatchLoggingOption.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.KinesisAnalyticsV2.Types.CloudWatchLoggingOption+-- 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.KinesisAnalyticsV2.Types.CloudWatchLoggingOption 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++-- | Provides a description of Amazon CloudWatch logging options, including+-- the log stream Amazon Resource Name (ARN).+--+-- /See:/ 'newCloudWatchLoggingOption' smart constructor.+data CloudWatchLoggingOption = CloudWatchLoggingOption'+  { -- | The ARN of the CloudWatch log to receive application messages.+    logStreamARN :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CloudWatchLoggingOption' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'logStreamARN', 'cloudWatchLoggingOption_logStreamARN' - The ARN of the CloudWatch log to receive application messages.+newCloudWatchLoggingOption ::+  -- | 'logStreamARN'+  Prelude.Text ->+  CloudWatchLoggingOption+newCloudWatchLoggingOption pLogStreamARN_ =+  CloudWatchLoggingOption'+    { logStreamARN =+        pLogStreamARN_+    }++-- | The ARN of the CloudWatch log to receive application messages.+cloudWatchLoggingOption_logStreamARN :: Lens.Lens' CloudWatchLoggingOption Prelude.Text+cloudWatchLoggingOption_logStreamARN = Lens.lens (\CloudWatchLoggingOption' {logStreamARN} -> logStreamARN) (\s@CloudWatchLoggingOption' {} a -> s {logStreamARN = a} :: CloudWatchLoggingOption)++instance Prelude.Hashable CloudWatchLoggingOption where+  hashWithSalt _salt CloudWatchLoggingOption' {..} =+    _salt `Prelude.hashWithSalt` logStreamARN++instance Prelude.NFData CloudWatchLoggingOption where+  rnf CloudWatchLoggingOption' {..} =+    Prelude.rnf logStreamARN++instance Data.ToJSON CloudWatchLoggingOption where+  toJSON CloudWatchLoggingOption' {..} =+    Data.object+      ( Prelude.catMaybes+          [Prelude.Just ("LogStreamARN" Data..= logStreamARN)]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/CloudWatchLoggingOptionDescription.hs view
@@ -0,0 +1,125 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.KinesisAnalyticsV2.Types.CloudWatchLoggingOptionDescription+-- 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.KinesisAnalyticsV2.Types.CloudWatchLoggingOptionDescription 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++-- | Describes the Amazon CloudWatch logging option.+--+-- /See:/ 'newCloudWatchLoggingOptionDescription' smart constructor.+data CloudWatchLoggingOptionDescription = CloudWatchLoggingOptionDescription'+  { -- | The ID of the CloudWatch logging option description.+    cloudWatchLoggingOptionId :: Prelude.Maybe Prelude.Text,+    -- | The IAM ARN of the role to use to send application messages.+    --+    -- Provided for backward compatibility. Applications created with the+    -- current API version have an application-level service execution role+    -- rather than a resource-level role.+    roleARN :: Prelude.Maybe Prelude.Text,+    -- | The Amazon Resource Name (ARN) of the CloudWatch log to receive+    -- application messages.+    logStreamARN :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CloudWatchLoggingOptionDescription' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'cloudWatchLoggingOptionId', 'cloudWatchLoggingOptionDescription_cloudWatchLoggingOptionId' - The ID of the CloudWatch logging option description.+--+-- 'roleARN', 'cloudWatchLoggingOptionDescription_roleARN' - The IAM ARN of the role to use to send application messages.+--+-- Provided for backward compatibility. Applications created with the+-- current API version have an application-level service execution role+-- rather than a resource-level role.+--+-- 'logStreamARN', 'cloudWatchLoggingOptionDescription_logStreamARN' - The Amazon Resource Name (ARN) of the CloudWatch log to receive+-- application messages.+newCloudWatchLoggingOptionDescription ::+  -- | 'logStreamARN'+  Prelude.Text ->+  CloudWatchLoggingOptionDescription+newCloudWatchLoggingOptionDescription pLogStreamARN_ =+  CloudWatchLoggingOptionDescription'+    { cloudWatchLoggingOptionId =+        Prelude.Nothing,+      roleARN = Prelude.Nothing,+      logStreamARN = pLogStreamARN_+    }++-- | The ID of the CloudWatch logging option description.+cloudWatchLoggingOptionDescription_cloudWatchLoggingOptionId :: Lens.Lens' CloudWatchLoggingOptionDescription (Prelude.Maybe Prelude.Text)+cloudWatchLoggingOptionDescription_cloudWatchLoggingOptionId = Lens.lens (\CloudWatchLoggingOptionDescription' {cloudWatchLoggingOptionId} -> cloudWatchLoggingOptionId) (\s@CloudWatchLoggingOptionDescription' {} a -> s {cloudWatchLoggingOptionId = a} :: CloudWatchLoggingOptionDescription)++-- | The IAM ARN of the role to use to send application messages.+--+-- Provided for backward compatibility. Applications created with the+-- current API version have an application-level service execution role+-- rather than a resource-level role.+cloudWatchLoggingOptionDescription_roleARN :: Lens.Lens' CloudWatchLoggingOptionDescription (Prelude.Maybe Prelude.Text)+cloudWatchLoggingOptionDescription_roleARN = Lens.lens (\CloudWatchLoggingOptionDescription' {roleARN} -> roleARN) (\s@CloudWatchLoggingOptionDescription' {} a -> s {roleARN = a} :: CloudWatchLoggingOptionDescription)++-- | The Amazon Resource Name (ARN) of the CloudWatch log to receive+-- application messages.+cloudWatchLoggingOptionDescription_logStreamARN :: Lens.Lens' CloudWatchLoggingOptionDescription Prelude.Text+cloudWatchLoggingOptionDescription_logStreamARN = Lens.lens (\CloudWatchLoggingOptionDescription' {logStreamARN} -> logStreamARN) (\s@CloudWatchLoggingOptionDescription' {} a -> s {logStreamARN = a} :: CloudWatchLoggingOptionDescription)++instance+  Data.FromJSON+    CloudWatchLoggingOptionDescription+  where+  parseJSON =+    Data.withObject+      "CloudWatchLoggingOptionDescription"+      ( \x ->+          CloudWatchLoggingOptionDescription'+            Prelude.<$> (x Data..:? "CloudWatchLoggingOptionId")+            Prelude.<*> (x Data..:? "RoleARN")+            Prelude.<*> (x Data..: "LogStreamARN")+      )++instance+  Prelude.Hashable+    CloudWatchLoggingOptionDescription+  where+  hashWithSalt+    _salt+    CloudWatchLoggingOptionDescription' {..} =+      _salt+        `Prelude.hashWithSalt` cloudWatchLoggingOptionId+        `Prelude.hashWithSalt` roleARN+        `Prelude.hashWithSalt` logStreamARN++instance+  Prelude.NFData+    CloudWatchLoggingOptionDescription+  where+  rnf CloudWatchLoggingOptionDescription' {..} =+    Prelude.rnf cloudWatchLoggingOptionId+      `Prelude.seq` Prelude.rnf roleARN+      `Prelude.seq` Prelude.rnf logStreamARN
+ gen/Amazonka/KinesisAnalyticsV2/Types/CloudWatchLoggingOptionUpdate.hs view
@@ -0,0 +1,98 @@+{-# 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.KinesisAnalyticsV2.Types.CloudWatchLoggingOptionUpdate+-- 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.KinesisAnalyticsV2.Types.CloudWatchLoggingOptionUpdate 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++-- | Describes the Amazon CloudWatch logging option updates.+--+-- /See:/ 'newCloudWatchLoggingOptionUpdate' smart constructor.+data CloudWatchLoggingOptionUpdate = CloudWatchLoggingOptionUpdate'+  { -- | The Amazon Resource Name (ARN) of the CloudWatch log to receive+    -- application messages.+    logStreamARNUpdate :: Prelude.Maybe Prelude.Text,+    -- | The ID of the CloudWatch logging option to update+    cloudWatchLoggingOptionId :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CloudWatchLoggingOptionUpdate' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'logStreamARNUpdate', 'cloudWatchLoggingOptionUpdate_logStreamARNUpdate' - The Amazon Resource Name (ARN) of the CloudWatch log to receive+-- application messages.+--+-- 'cloudWatchLoggingOptionId', 'cloudWatchLoggingOptionUpdate_cloudWatchLoggingOptionId' - The ID of the CloudWatch logging option to update+newCloudWatchLoggingOptionUpdate ::+  -- | 'cloudWatchLoggingOptionId'+  Prelude.Text ->+  CloudWatchLoggingOptionUpdate+newCloudWatchLoggingOptionUpdate+  pCloudWatchLoggingOptionId_ =+    CloudWatchLoggingOptionUpdate'+      { logStreamARNUpdate =+          Prelude.Nothing,+        cloudWatchLoggingOptionId =+          pCloudWatchLoggingOptionId_+      }++-- | The Amazon Resource Name (ARN) of the CloudWatch log to receive+-- application messages.+cloudWatchLoggingOptionUpdate_logStreamARNUpdate :: Lens.Lens' CloudWatchLoggingOptionUpdate (Prelude.Maybe Prelude.Text)+cloudWatchLoggingOptionUpdate_logStreamARNUpdate = Lens.lens (\CloudWatchLoggingOptionUpdate' {logStreamARNUpdate} -> logStreamARNUpdate) (\s@CloudWatchLoggingOptionUpdate' {} a -> s {logStreamARNUpdate = a} :: CloudWatchLoggingOptionUpdate)++-- | The ID of the CloudWatch logging option to update+cloudWatchLoggingOptionUpdate_cloudWatchLoggingOptionId :: Lens.Lens' CloudWatchLoggingOptionUpdate Prelude.Text+cloudWatchLoggingOptionUpdate_cloudWatchLoggingOptionId = Lens.lens (\CloudWatchLoggingOptionUpdate' {cloudWatchLoggingOptionId} -> cloudWatchLoggingOptionId) (\s@CloudWatchLoggingOptionUpdate' {} a -> s {cloudWatchLoggingOptionId = a} :: CloudWatchLoggingOptionUpdate)++instance+  Prelude.Hashable+    CloudWatchLoggingOptionUpdate+  where+  hashWithSalt _salt CloudWatchLoggingOptionUpdate' {..} =+    _salt+      `Prelude.hashWithSalt` logStreamARNUpdate+      `Prelude.hashWithSalt` cloudWatchLoggingOptionId++instance Prelude.NFData CloudWatchLoggingOptionUpdate where+  rnf CloudWatchLoggingOptionUpdate' {..} =+    Prelude.rnf logStreamARNUpdate+      `Prelude.seq` Prelude.rnf cloudWatchLoggingOptionId++instance Data.ToJSON CloudWatchLoggingOptionUpdate where+  toJSON CloudWatchLoggingOptionUpdate' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("LogStreamARNUpdate" Data..=)+              Prelude.<$> logStreamARNUpdate,+            Prelude.Just+              ( "CloudWatchLoggingOptionId"+                  Data..= cloudWatchLoggingOptionId+              )+          ]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/CodeContent.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.KinesisAnalyticsV2.Types.CodeContent+-- 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.KinesisAnalyticsV2.Types.CodeContent where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types.S3ContentLocation+import qualified Amazonka.Prelude as Prelude++-- | Specifies either the application code, or the location of the+-- application code, for a Flink-based Kinesis Data Analytics application.+--+-- /See:/ 'newCodeContent' smart constructor.+data CodeContent = CodeContent'+  { -- | Information about the Amazon S3 bucket that contains the application+    -- code.+    s3ContentLocation :: Prelude.Maybe S3ContentLocation,+    -- | The text-format code for a Flink-based Kinesis Data Analytics+    -- application.+    textContent :: Prelude.Maybe Prelude.Text,+    -- | The zip-format code for a Flink-based Kinesis Data Analytics+    -- application.+    zipFileContent :: Prelude.Maybe Data.Base64+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CodeContent' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 's3ContentLocation', 'codeContent_s3ContentLocation' - Information about the Amazon S3 bucket that contains the application+-- code.+--+-- 'textContent', 'codeContent_textContent' - The text-format code for a Flink-based Kinesis Data Analytics+-- application.+--+-- 'zipFileContent', 'codeContent_zipFileContent' - The zip-format code for a Flink-based Kinesis Data Analytics+-- application.--+-- -- /Note:/ This 'Lens' automatically encodes and decodes Base64 data.+-- -- The underlying isomorphism will encode to Base64 representation during+-- -- serialisation, and decode from Base64 representation during deserialisation.+-- -- This 'Lens' accepts and returns only raw unencoded data.+newCodeContent ::+  CodeContent+newCodeContent =+  CodeContent'+    { s3ContentLocation = Prelude.Nothing,+      textContent = Prelude.Nothing,+      zipFileContent = Prelude.Nothing+    }++-- | Information about the Amazon S3 bucket that contains the application+-- code.+codeContent_s3ContentLocation :: Lens.Lens' CodeContent (Prelude.Maybe S3ContentLocation)+codeContent_s3ContentLocation = Lens.lens (\CodeContent' {s3ContentLocation} -> s3ContentLocation) (\s@CodeContent' {} a -> s {s3ContentLocation = a} :: CodeContent)++-- | The text-format code for a Flink-based Kinesis Data Analytics+-- application.+codeContent_textContent :: Lens.Lens' CodeContent (Prelude.Maybe Prelude.Text)+codeContent_textContent = Lens.lens (\CodeContent' {textContent} -> textContent) (\s@CodeContent' {} a -> s {textContent = a} :: CodeContent)++-- | The zip-format code for a Flink-based Kinesis Data Analytics+-- application.--+-- -- /Note:/ This 'Lens' automatically encodes and decodes Base64 data.+-- -- The underlying isomorphism will encode to Base64 representation during+-- -- serialisation, and decode from Base64 representation during deserialisation.+-- -- This 'Lens' accepts and returns only raw unencoded data.+codeContent_zipFileContent :: Lens.Lens' CodeContent (Prelude.Maybe Prelude.ByteString)+codeContent_zipFileContent = Lens.lens (\CodeContent' {zipFileContent} -> zipFileContent) (\s@CodeContent' {} a -> s {zipFileContent = a} :: CodeContent) Prelude.. Lens.mapping Data._Base64++instance Prelude.Hashable CodeContent where+  hashWithSalt _salt CodeContent' {..} =+    _salt+      `Prelude.hashWithSalt` s3ContentLocation+      `Prelude.hashWithSalt` textContent+      `Prelude.hashWithSalt` zipFileContent++instance Prelude.NFData CodeContent where+  rnf CodeContent' {..} =+    Prelude.rnf s3ContentLocation+      `Prelude.seq` Prelude.rnf textContent+      `Prelude.seq` Prelude.rnf zipFileContent++instance Data.ToJSON CodeContent where+  toJSON CodeContent' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("S3ContentLocation" Data..=)+              Prelude.<$> s3ContentLocation,+            ("TextContent" Data..=) Prelude.<$> textContent,+            ("ZipFileContent" Data..=)+              Prelude.<$> zipFileContent+          ]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/CodeContentDescription.hs view
@@ -0,0 +1,117 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.KinesisAnalyticsV2.Types.CodeContentDescription+-- 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.KinesisAnalyticsV2.Types.CodeContentDescription where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types.S3ApplicationCodeLocationDescription+import qualified Amazonka.Prelude as Prelude++-- | Describes details about the code of a Kinesis Data Analytics+-- application.+--+-- /See:/ 'newCodeContentDescription' smart constructor.+data CodeContentDescription = CodeContentDescription'+  { -- | The checksum that can be used to validate zip-format code.+    codeMD5 :: Prelude.Maybe Prelude.Text,+    -- | The size in bytes of the application code. Can be used to validate+    -- zip-format code.+    codeSize :: Prelude.Maybe Prelude.Natural,+    -- | The S3 bucket Amazon Resource Name (ARN), file key, and object version+    -- of the application code stored in Amazon S3.+    s3ApplicationCodeLocationDescription :: Prelude.Maybe S3ApplicationCodeLocationDescription,+    -- | The text-format code+    textContent :: Prelude.Maybe Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CodeContentDescription' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'codeMD5', 'codeContentDescription_codeMD5' - The checksum that can be used to validate zip-format code.+--+-- 'codeSize', 'codeContentDescription_codeSize' - The size in bytes of the application code. Can be used to validate+-- zip-format code.+--+-- 's3ApplicationCodeLocationDescription', 'codeContentDescription_s3ApplicationCodeLocationDescription' - The S3 bucket Amazon Resource Name (ARN), file key, and object version+-- of the application code stored in Amazon S3.+--+-- 'textContent', 'codeContentDescription_textContent' - The text-format code+newCodeContentDescription ::+  CodeContentDescription+newCodeContentDescription =+  CodeContentDescription'+    { codeMD5 = Prelude.Nothing,+      codeSize = Prelude.Nothing,+      s3ApplicationCodeLocationDescription =+        Prelude.Nothing,+      textContent = Prelude.Nothing+    }++-- | The checksum that can be used to validate zip-format code.+codeContentDescription_codeMD5 :: Lens.Lens' CodeContentDescription (Prelude.Maybe Prelude.Text)+codeContentDescription_codeMD5 = Lens.lens (\CodeContentDescription' {codeMD5} -> codeMD5) (\s@CodeContentDescription' {} a -> s {codeMD5 = a} :: CodeContentDescription)++-- | The size in bytes of the application code. Can be used to validate+-- zip-format code.+codeContentDescription_codeSize :: Lens.Lens' CodeContentDescription (Prelude.Maybe Prelude.Natural)+codeContentDescription_codeSize = Lens.lens (\CodeContentDescription' {codeSize} -> codeSize) (\s@CodeContentDescription' {} a -> s {codeSize = a} :: CodeContentDescription)++-- | The S3 bucket Amazon Resource Name (ARN), file key, and object version+-- of the application code stored in Amazon S3.+codeContentDescription_s3ApplicationCodeLocationDescription :: Lens.Lens' CodeContentDescription (Prelude.Maybe S3ApplicationCodeLocationDescription)+codeContentDescription_s3ApplicationCodeLocationDescription = Lens.lens (\CodeContentDescription' {s3ApplicationCodeLocationDescription} -> s3ApplicationCodeLocationDescription) (\s@CodeContentDescription' {} a -> s {s3ApplicationCodeLocationDescription = a} :: CodeContentDescription)++-- | The text-format code+codeContentDescription_textContent :: Lens.Lens' CodeContentDescription (Prelude.Maybe Prelude.Text)+codeContentDescription_textContent = Lens.lens (\CodeContentDescription' {textContent} -> textContent) (\s@CodeContentDescription' {} a -> s {textContent = a} :: CodeContentDescription)++instance Data.FromJSON CodeContentDescription where+  parseJSON =+    Data.withObject+      "CodeContentDescription"+      ( \x ->+          CodeContentDescription'+            Prelude.<$> (x Data..:? "CodeMD5")+            Prelude.<*> (x Data..:? "CodeSize")+            Prelude.<*> (x Data..:? "S3ApplicationCodeLocationDescription")+            Prelude.<*> (x Data..:? "TextContent")+      )++instance Prelude.Hashable CodeContentDescription where+  hashWithSalt _salt CodeContentDescription' {..} =+    _salt+      `Prelude.hashWithSalt` codeMD5+      `Prelude.hashWithSalt` codeSize+      `Prelude.hashWithSalt` s3ApplicationCodeLocationDescription+      `Prelude.hashWithSalt` textContent++instance Prelude.NFData CodeContentDescription where+  rnf CodeContentDescription' {..} =+    Prelude.rnf codeMD5+      `Prelude.seq` Prelude.rnf codeSize+      `Prelude.seq` Prelude.rnf s3ApplicationCodeLocationDescription+      `Prelude.seq` Prelude.rnf textContent
+ gen/Amazonka/KinesisAnalyticsV2/Types/CodeContentType.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.KinesisAnalyticsV2.Types.CodeContentType+-- 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.KinesisAnalyticsV2.Types.CodeContentType+  ( CodeContentType+      ( ..,+        CodeContentType_PLAINTEXT,+        CodeContentType_ZIPFILE+      ),+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype CodeContentType = CodeContentType'+  { fromCodeContentType ::+      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 CodeContentType_PLAINTEXT :: CodeContentType+pattern CodeContentType_PLAINTEXT = CodeContentType' "PLAINTEXT"++pattern CodeContentType_ZIPFILE :: CodeContentType+pattern CodeContentType_ZIPFILE = CodeContentType' "ZIPFILE"++{-# COMPLETE+  CodeContentType_PLAINTEXT,+  CodeContentType_ZIPFILE,+  CodeContentType'+  #-}
+ gen/Amazonka/KinesisAnalyticsV2/Types/CodeContentUpdate.hs view
@@ -0,0 +1,109 @@+{-# 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.KinesisAnalyticsV2.Types.CodeContentUpdate+-- 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.KinesisAnalyticsV2.Types.CodeContentUpdate where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types.S3ContentLocationUpdate+import qualified Amazonka.Prelude as Prelude++-- | Describes an update to the code of an application. Not supported for+-- Apache Zeppelin.+--+-- /See:/ 'newCodeContentUpdate' smart constructor.+data CodeContentUpdate = CodeContentUpdate'+  { -- | Describes an update to the location of code for an application.+    s3ContentLocationUpdate :: Prelude.Maybe S3ContentLocationUpdate,+    -- | Describes an update to the text code for an application.+    textContentUpdate :: Prelude.Maybe Prelude.Text,+    -- | Describes an update to the zipped code for an application.+    zipFileContentUpdate :: Prelude.Maybe Data.Base64+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CodeContentUpdate' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 's3ContentLocationUpdate', 'codeContentUpdate_s3ContentLocationUpdate' - Describes an update to the location of code for an application.+--+-- 'textContentUpdate', 'codeContentUpdate_textContentUpdate' - Describes an update to the text code for an application.+--+-- 'zipFileContentUpdate', 'codeContentUpdate_zipFileContentUpdate' - Describes an update to the zipped code for an application.--+-- -- /Note:/ This 'Lens' automatically encodes and decodes Base64 data.+-- -- The underlying isomorphism will encode to Base64 representation during+-- -- serialisation, and decode from Base64 representation during deserialisation.+-- -- This 'Lens' accepts and returns only raw unencoded data.+newCodeContentUpdate ::+  CodeContentUpdate+newCodeContentUpdate =+  CodeContentUpdate'+    { s3ContentLocationUpdate =+        Prelude.Nothing,+      textContentUpdate = Prelude.Nothing,+      zipFileContentUpdate = Prelude.Nothing+    }++-- | Describes an update to the location of code for an application.+codeContentUpdate_s3ContentLocationUpdate :: Lens.Lens' CodeContentUpdate (Prelude.Maybe S3ContentLocationUpdate)+codeContentUpdate_s3ContentLocationUpdate = Lens.lens (\CodeContentUpdate' {s3ContentLocationUpdate} -> s3ContentLocationUpdate) (\s@CodeContentUpdate' {} a -> s {s3ContentLocationUpdate = a} :: CodeContentUpdate)++-- | Describes an update to the text code for an application.+codeContentUpdate_textContentUpdate :: Lens.Lens' CodeContentUpdate (Prelude.Maybe Prelude.Text)+codeContentUpdate_textContentUpdate = Lens.lens (\CodeContentUpdate' {textContentUpdate} -> textContentUpdate) (\s@CodeContentUpdate' {} a -> s {textContentUpdate = a} :: CodeContentUpdate)++-- | Describes an update to the zipped code for an application.--+-- -- /Note:/ This 'Lens' automatically encodes and decodes Base64 data.+-- -- The underlying isomorphism will encode to Base64 representation during+-- -- serialisation, and decode from Base64 representation during deserialisation.+-- -- This 'Lens' accepts and returns only raw unencoded data.+codeContentUpdate_zipFileContentUpdate :: Lens.Lens' CodeContentUpdate (Prelude.Maybe Prelude.ByteString)+codeContentUpdate_zipFileContentUpdate = Lens.lens (\CodeContentUpdate' {zipFileContentUpdate} -> zipFileContentUpdate) (\s@CodeContentUpdate' {} a -> s {zipFileContentUpdate = a} :: CodeContentUpdate) Prelude.. Lens.mapping Data._Base64++instance Prelude.Hashable CodeContentUpdate where+  hashWithSalt _salt CodeContentUpdate' {..} =+    _salt+      `Prelude.hashWithSalt` s3ContentLocationUpdate+      `Prelude.hashWithSalt` textContentUpdate+      `Prelude.hashWithSalt` zipFileContentUpdate++instance Prelude.NFData CodeContentUpdate where+  rnf CodeContentUpdate' {..} =+    Prelude.rnf s3ContentLocationUpdate+      `Prelude.seq` Prelude.rnf textContentUpdate+      `Prelude.seq` Prelude.rnf zipFileContentUpdate++instance Data.ToJSON CodeContentUpdate where+  toJSON CodeContentUpdate' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("S3ContentLocationUpdate" Data..=)+              Prelude.<$> s3ContentLocationUpdate,+            ("TextContentUpdate" Data..=)+              Prelude.<$> textContentUpdate,+            ("ZipFileContentUpdate" Data..=)+              Prelude.<$> zipFileContentUpdate+          ]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/ConfigurationType.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.KinesisAnalyticsV2.Types.ConfigurationType+-- 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.KinesisAnalyticsV2.Types.ConfigurationType+  ( ConfigurationType+      ( ..,+        ConfigurationType_CUSTOM,+        ConfigurationType_DEFAULT+      ),+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype ConfigurationType = ConfigurationType'+  { fromConfigurationType ::+      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 ConfigurationType_CUSTOM :: ConfigurationType+pattern ConfigurationType_CUSTOM = ConfigurationType' "CUSTOM"++pattern ConfigurationType_DEFAULT :: ConfigurationType+pattern ConfigurationType_DEFAULT = ConfigurationType' "DEFAULT"++{-# COMPLETE+  ConfigurationType_CUSTOM,+  ConfigurationType_DEFAULT,+  ConfigurationType'+  #-}
+ gen/Amazonka/KinesisAnalyticsV2/Types/CustomArtifactConfiguration.hs view
@@ -0,0 +1,109 @@+{-# 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.KinesisAnalyticsV2.Types.CustomArtifactConfiguration+-- 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.KinesisAnalyticsV2.Types.CustomArtifactConfiguration where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types.ArtifactType+import Amazonka.KinesisAnalyticsV2.Types.MavenReference+import Amazonka.KinesisAnalyticsV2.Types.S3ContentLocation+import qualified Amazonka.Prelude as Prelude++-- | Specifies dependency JARs, as well as JAR files that contain+-- user-defined functions (UDF).+--+-- /See:/ 'newCustomArtifactConfiguration' smart constructor.+data CustomArtifactConfiguration = CustomArtifactConfiguration'+  { -- | The parameters required to fully specify a Maven reference.+    mavenReference :: Prelude.Maybe MavenReference,+    s3ContentLocation :: Prelude.Maybe S3ContentLocation,+    -- | @UDF@ stands for user-defined functions. This type of artifact must be+    -- in an S3 bucket. A @DEPENDENCY_JAR@ can be in either Maven or an S3+    -- bucket.+    artifactType :: ArtifactType+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CustomArtifactConfiguration' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'mavenReference', 'customArtifactConfiguration_mavenReference' - The parameters required to fully specify a Maven reference.+--+-- 's3ContentLocation', 'customArtifactConfiguration_s3ContentLocation' - Undocumented member.+--+-- 'artifactType', 'customArtifactConfiguration_artifactType' - @UDF@ stands for user-defined functions. This type of artifact must be+-- in an S3 bucket. A @DEPENDENCY_JAR@ can be in either Maven or an S3+-- bucket.+newCustomArtifactConfiguration ::+  -- | 'artifactType'+  ArtifactType ->+  CustomArtifactConfiguration+newCustomArtifactConfiguration pArtifactType_ =+  CustomArtifactConfiguration'+    { mavenReference =+        Prelude.Nothing,+      s3ContentLocation = Prelude.Nothing,+      artifactType = pArtifactType_+    }++-- | The parameters required to fully specify a Maven reference.+customArtifactConfiguration_mavenReference :: Lens.Lens' CustomArtifactConfiguration (Prelude.Maybe MavenReference)+customArtifactConfiguration_mavenReference = Lens.lens (\CustomArtifactConfiguration' {mavenReference} -> mavenReference) (\s@CustomArtifactConfiguration' {} a -> s {mavenReference = a} :: CustomArtifactConfiguration)++-- | Undocumented member.+customArtifactConfiguration_s3ContentLocation :: Lens.Lens' CustomArtifactConfiguration (Prelude.Maybe S3ContentLocation)+customArtifactConfiguration_s3ContentLocation = Lens.lens (\CustomArtifactConfiguration' {s3ContentLocation} -> s3ContentLocation) (\s@CustomArtifactConfiguration' {} a -> s {s3ContentLocation = a} :: CustomArtifactConfiguration)++-- | @UDF@ stands for user-defined functions. This type of artifact must be+-- in an S3 bucket. A @DEPENDENCY_JAR@ can be in either Maven or an S3+-- bucket.+customArtifactConfiguration_artifactType :: Lens.Lens' CustomArtifactConfiguration ArtifactType+customArtifactConfiguration_artifactType = Lens.lens (\CustomArtifactConfiguration' {artifactType} -> artifactType) (\s@CustomArtifactConfiguration' {} a -> s {artifactType = a} :: CustomArtifactConfiguration)++instance Prelude.Hashable CustomArtifactConfiguration where+  hashWithSalt _salt CustomArtifactConfiguration' {..} =+    _salt+      `Prelude.hashWithSalt` mavenReference+      `Prelude.hashWithSalt` s3ContentLocation+      `Prelude.hashWithSalt` artifactType++instance Prelude.NFData CustomArtifactConfiguration where+  rnf CustomArtifactConfiguration' {..} =+    Prelude.rnf mavenReference+      `Prelude.seq` Prelude.rnf s3ContentLocation+      `Prelude.seq` Prelude.rnf artifactType++instance Data.ToJSON CustomArtifactConfiguration where+  toJSON CustomArtifactConfiguration' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("MavenReference" Data..=)+              Prelude.<$> mavenReference,+            ("S3ContentLocation" Data..=)+              Prelude.<$> s3ContentLocation,+            Prelude.Just ("ArtifactType" Data..= artifactType)+          ]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/CustomArtifactConfigurationDescription.hs view
@@ -0,0 +1,118 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.KinesisAnalyticsV2.Types.CustomArtifactConfigurationDescription+-- 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.KinesisAnalyticsV2.Types.CustomArtifactConfigurationDescription where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types.ArtifactType+import Amazonka.KinesisAnalyticsV2.Types.MavenReference+import Amazonka.KinesisAnalyticsV2.Types.S3ContentLocation+import qualified Amazonka.Prelude as Prelude++-- | Specifies a dependency JAR or a JAR of user-defined functions.+--+-- /See:/ 'newCustomArtifactConfigurationDescription' smart constructor.+data CustomArtifactConfigurationDescription = CustomArtifactConfigurationDescription'+  { -- | @UDF@ stands for user-defined functions. This type of artifact must be+    -- in an S3 bucket. A @DEPENDENCY_JAR@ can be in either Maven or an S3+    -- bucket.+    artifactType :: Prelude.Maybe ArtifactType,+    -- | The parameters that are required to specify a Maven dependency.+    mavenReferenceDescription :: Prelude.Maybe MavenReference,+    s3ContentLocationDescription :: Prelude.Maybe S3ContentLocation+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CustomArtifactConfigurationDescription' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'artifactType', 'customArtifactConfigurationDescription_artifactType' - @UDF@ stands for user-defined functions. This type of artifact must be+-- in an S3 bucket. A @DEPENDENCY_JAR@ can be in either Maven or an S3+-- bucket.+--+-- 'mavenReferenceDescription', 'customArtifactConfigurationDescription_mavenReferenceDescription' - The parameters that are required to specify a Maven dependency.+--+-- 's3ContentLocationDescription', 'customArtifactConfigurationDescription_s3ContentLocationDescription' - Undocumented member.+newCustomArtifactConfigurationDescription ::+  CustomArtifactConfigurationDescription+newCustomArtifactConfigurationDescription =+  CustomArtifactConfigurationDescription'+    { artifactType =+        Prelude.Nothing,+      mavenReferenceDescription =+        Prelude.Nothing,+      s3ContentLocationDescription =+        Prelude.Nothing+    }++-- | @UDF@ stands for user-defined functions. This type of artifact must be+-- in an S3 bucket. A @DEPENDENCY_JAR@ can be in either Maven or an S3+-- bucket.+customArtifactConfigurationDescription_artifactType :: Lens.Lens' CustomArtifactConfigurationDescription (Prelude.Maybe ArtifactType)+customArtifactConfigurationDescription_artifactType = Lens.lens (\CustomArtifactConfigurationDescription' {artifactType} -> artifactType) (\s@CustomArtifactConfigurationDescription' {} a -> s {artifactType = a} :: CustomArtifactConfigurationDescription)++-- | The parameters that are required to specify a Maven dependency.+customArtifactConfigurationDescription_mavenReferenceDescription :: Lens.Lens' CustomArtifactConfigurationDescription (Prelude.Maybe MavenReference)+customArtifactConfigurationDescription_mavenReferenceDescription = Lens.lens (\CustomArtifactConfigurationDescription' {mavenReferenceDescription} -> mavenReferenceDescription) (\s@CustomArtifactConfigurationDescription' {} a -> s {mavenReferenceDescription = a} :: CustomArtifactConfigurationDescription)++-- | Undocumented member.+customArtifactConfigurationDescription_s3ContentLocationDescription :: Lens.Lens' CustomArtifactConfigurationDescription (Prelude.Maybe S3ContentLocation)+customArtifactConfigurationDescription_s3ContentLocationDescription = Lens.lens (\CustomArtifactConfigurationDescription' {s3ContentLocationDescription} -> s3ContentLocationDescription) (\s@CustomArtifactConfigurationDescription' {} a -> s {s3ContentLocationDescription = a} :: CustomArtifactConfigurationDescription)++instance+  Data.FromJSON+    CustomArtifactConfigurationDescription+  where+  parseJSON =+    Data.withObject+      "CustomArtifactConfigurationDescription"+      ( \x ->+          CustomArtifactConfigurationDescription'+            Prelude.<$> (x Data..:? "ArtifactType")+            Prelude.<*> (x Data..:? "MavenReferenceDescription")+            Prelude.<*> (x Data..:? "S3ContentLocationDescription")+      )++instance+  Prelude.Hashable+    CustomArtifactConfigurationDescription+  where+  hashWithSalt+    _salt+    CustomArtifactConfigurationDescription' {..} =+      _salt+        `Prelude.hashWithSalt` artifactType+        `Prelude.hashWithSalt` mavenReferenceDescription+        `Prelude.hashWithSalt` s3ContentLocationDescription++instance+  Prelude.NFData+    CustomArtifactConfigurationDescription+  where+  rnf CustomArtifactConfigurationDescription' {..} =+    Prelude.rnf artifactType+      `Prelude.seq` Prelude.rnf mavenReferenceDescription+      `Prelude.seq` Prelude.rnf s3ContentLocationDescription
+ gen/Amazonka/KinesisAnalyticsV2/Types/DeployAsApplicationConfiguration.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.KinesisAnalyticsV2.Types.DeployAsApplicationConfiguration+-- 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.KinesisAnalyticsV2.Types.DeployAsApplicationConfiguration where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types.S3ContentBaseLocation+import qualified Amazonka.Prelude as Prelude++-- | The information required to deploy a Kinesis Data Analytics Studio+-- notebook as an application with durable state.+--+-- /See:/ 'newDeployAsApplicationConfiguration' smart constructor.+data DeployAsApplicationConfiguration = DeployAsApplicationConfiguration'+  { -- | The description of an Amazon S3 object that contains the Amazon Data+    -- Analytics application, including the Amazon Resource Name (ARN) of the+    -- S3 bucket, the name of the Amazon S3 object that contains the data, and+    -- the version number of the Amazon S3 object that contains the data.+    s3ContentLocation :: S3ContentBaseLocation+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeployAsApplicationConfiguration' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 's3ContentLocation', 'deployAsApplicationConfiguration_s3ContentLocation' - The description of an Amazon S3 object that contains the Amazon Data+-- Analytics application, including the Amazon Resource Name (ARN) of the+-- S3 bucket, the name of the Amazon S3 object that contains the data, and+-- the version number of the Amazon S3 object that contains the data.+newDeployAsApplicationConfiguration ::+  -- | 's3ContentLocation'+  S3ContentBaseLocation ->+  DeployAsApplicationConfiguration+newDeployAsApplicationConfiguration+  pS3ContentLocation_ =+    DeployAsApplicationConfiguration'+      { s3ContentLocation =+          pS3ContentLocation_+      }++-- | The description of an Amazon S3 object that contains the Amazon Data+-- Analytics application, including the Amazon Resource Name (ARN) of the+-- S3 bucket, the name of the Amazon S3 object that contains the data, and+-- the version number of the Amazon S3 object that contains the data.+deployAsApplicationConfiguration_s3ContentLocation :: Lens.Lens' DeployAsApplicationConfiguration S3ContentBaseLocation+deployAsApplicationConfiguration_s3ContentLocation = Lens.lens (\DeployAsApplicationConfiguration' {s3ContentLocation} -> s3ContentLocation) (\s@DeployAsApplicationConfiguration' {} a -> s {s3ContentLocation = a} :: DeployAsApplicationConfiguration)++instance+  Prelude.Hashable+    DeployAsApplicationConfiguration+  where+  hashWithSalt+    _salt+    DeployAsApplicationConfiguration' {..} =+      _salt `Prelude.hashWithSalt` s3ContentLocation++instance+  Prelude.NFData+    DeployAsApplicationConfiguration+  where+  rnf DeployAsApplicationConfiguration' {..} =+    Prelude.rnf s3ContentLocation++instance Data.ToJSON DeployAsApplicationConfiguration where+  toJSON DeployAsApplicationConfiguration' {..} =+    Data.object+      ( Prelude.catMaybes+          [ Prelude.Just+              ("S3ContentLocation" Data..= s3ContentLocation)+          ]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/DeployAsApplicationConfigurationDescription.hs view
@@ -0,0 +1,92 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.KinesisAnalyticsV2.Types.DeployAsApplicationConfigurationDescription+-- 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.KinesisAnalyticsV2.Types.DeployAsApplicationConfigurationDescription where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types.S3ContentBaseLocationDescription+import qualified Amazonka.Prelude as Prelude++-- | The configuration information required to deploy an Amazon Data+-- Analytics Studio notebook as an application with durable state.+--+-- /See:/ 'newDeployAsApplicationConfigurationDescription' smart constructor.+data DeployAsApplicationConfigurationDescription = DeployAsApplicationConfigurationDescription'+  { -- | The location that holds the data required to specify an Amazon Data+    -- Analytics application.+    s3ContentLocationDescription :: S3ContentBaseLocationDescription+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeployAsApplicationConfigurationDescription' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 's3ContentLocationDescription', 'deployAsApplicationConfigurationDescription_s3ContentLocationDescription' - The location that holds the data required to specify an Amazon Data+-- Analytics application.+newDeployAsApplicationConfigurationDescription ::+  -- | 's3ContentLocationDescription'+  S3ContentBaseLocationDescription ->+  DeployAsApplicationConfigurationDescription+newDeployAsApplicationConfigurationDescription+  pS3ContentLocationDescription_ =+    DeployAsApplicationConfigurationDescription'+      { s3ContentLocationDescription =+          pS3ContentLocationDescription_+      }++-- | The location that holds the data required to specify an Amazon Data+-- Analytics application.+deployAsApplicationConfigurationDescription_s3ContentLocationDescription :: Lens.Lens' DeployAsApplicationConfigurationDescription S3ContentBaseLocationDescription+deployAsApplicationConfigurationDescription_s3ContentLocationDescription = Lens.lens (\DeployAsApplicationConfigurationDescription' {s3ContentLocationDescription} -> s3ContentLocationDescription) (\s@DeployAsApplicationConfigurationDescription' {} a -> s {s3ContentLocationDescription = a} :: DeployAsApplicationConfigurationDescription)++instance+  Data.FromJSON+    DeployAsApplicationConfigurationDescription+  where+  parseJSON =+    Data.withObject+      "DeployAsApplicationConfigurationDescription"+      ( \x ->+          DeployAsApplicationConfigurationDescription'+            Prelude.<$> (x Data..: "S3ContentLocationDescription")+      )++instance+  Prelude.Hashable+    DeployAsApplicationConfigurationDescription+  where+  hashWithSalt+    _salt+    DeployAsApplicationConfigurationDescription' {..} =+      _salt+        `Prelude.hashWithSalt` s3ContentLocationDescription++instance+  Prelude.NFData+    DeployAsApplicationConfigurationDescription+  where+  rnf DeployAsApplicationConfigurationDescription' {..} =+    Prelude.rnf s3ContentLocationDescription
+ gen/Amazonka/KinesisAnalyticsV2/Types/DeployAsApplicationConfigurationUpdate.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.KinesisAnalyticsV2.Types.DeployAsApplicationConfigurationUpdate+-- 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.KinesisAnalyticsV2.Types.DeployAsApplicationConfigurationUpdate where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types.S3ContentBaseLocationUpdate+import qualified Amazonka.Prelude as Prelude++-- | Updates to the configuration information required to deploy an Amazon+-- Data Analytics Studio notebook as an application with durable state.+--+-- /See:/ 'newDeployAsApplicationConfigurationUpdate' smart constructor.+data DeployAsApplicationConfigurationUpdate = DeployAsApplicationConfigurationUpdate'+  { -- | Updates to the location that holds the data required to specify an+    -- Amazon Data Analytics application.+    s3ContentLocationUpdate :: Prelude.Maybe S3ContentBaseLocationUpdate+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeployAsApplicationConfigurationUpdate' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 's3ContentLocationUpdate', 'deployAsApplicationConfigurationUpdate_s3ContentLocationUpdate' - Updates to the location that holds the data required to specify an+-- Amazon Data Analytics application.+newDeployAsApplicationConfigurationUpdate ::+  DeployAsApplicationConfigurationUpdate+newDeployAsApplicationConfigurationUpdate =+  DeployAsApplicationConfigurationUpdate'+    { s3ContentLocationUpdate =+        Prelude.Nothing+    }++-- | Updates to the location that holds the data required to specify an+-- Amazon Data Analytics application.+deployAsApplicationConfigurationUpdate_s3ContentLocationUpdate :: Lens.Lens' DeployAsApplicationConfigurationUpdate (Prelude.Maybe S3ContentBaseLocationUpdate)+deployAsApplicationConfigurationUpdate_s3ContentLocationUpdate = Lens.lens (\DeployAsApplicationConfigurationUpdate' {s3ContentLocationUpdate} -> s3ContentLocationUpdate) (\s@DeployAsApplicationConfigurationUpdate' {} a -> s {s3ContentLocationUpdate = a} :: DeployAsApplicationConfigurationUpdate)++instance+  Prelude.Hashable+    DeployAsApplicationConfigurationUpdate+  where+  hashWithSalt+    _salt+    DeployAsApplicationConfigurationUpdate' {..} =+      _salt+        `Prelude.hashWithSalt` s3ContentLocationUpdate++instance+  Prelude.NFData+    DeployAsApplicationConfigurationUpdate+  where+  rnf DeployAsApplicationConfigurationUpdate' {..} =+    Prelude.rnf s3ContentLocationUpdate++instance+  Data.ToJSON+    DeployAsApplicationConfigurationUpdate+  where+  toJSON DeployAsApplicationConfigurationUpdate' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("S3ContentLocationUpdate" Data..=)+              Prelude.<$> s3ContentLocationUpdate+          ]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/DestinationSchema.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.KinesisAnalyticsV2.Types.DestinationSchema+-- 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.KinesisAnalyticsV2.Types.DestinationSchema where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types.RecordFormatType+import qualified Amazonka.Prelude as Prelude++-- | Describes the data format when records are written to the destination in+-- a SQL-based Kinesis Data Analytics application.+--+-- /See:/ 'newDestinationSchema' smart constructor.+data DestinationSchema = DestinationSchema'+  { -- | Specifies the format of the records on the output stream.+    recordFormatType :: RecordFormatType+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DestinationSchema' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'recordFormatType', 'destinationSchema_recordFormatType' - Specifies the format of the records on the output stream.+newDestinationSchema ::+  -- | 'recordFormatType'+  RecordFormatType ->+  DestinationSchema+newDestinationSchema pRecordFormatType_ =+  DestinationSchema'+    { recordFormatType =+        pRecordFormatType_+    }++-- | Specifies the format of the records on the output stream.+destinationSchema_recordFormatType :: Lens.Lens' DestinationSchema RecordFormatType+destinationSchema_recordFormatType = Lens.lens (\DestinationSchema' {recordFormatType} -> recordFormatType) (\s@DestinationSchema' {} a -> s {recordFormatType = a} :: DestinationSchema)++instance Data.FromJSON DestinationSchema where+  parseJSON =+    Data.withObject+      "DestinationSchema"+      ( \x ->+          DestinationSchema'+            Prelude.<$> (x Data..: "RecordFormatType")+      )++instance Prelude.Hashable DestinationSchema where+  hashWithSalt _salt DestinationSchema' {..} =+    _salt `Prelude.hashWithSalt` recordFormatType++instance Prelude.NFData DestinationSchema where+  rnf DestinationSchema' {..} =+    Prelude.rnf recordFormatType++instance Data.ToJSON DestinationSchema where+  toJSON DestinationSchema' {..} =+    Data.object+      ( Prelude.catMaybes+          [ Prelude.Just+              ("RecordFormatType" Data..= recordFormatType)+          ]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/EnvironmentProperties.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.KinesisAnalyticsV2.Types.EnvironmentProperties+-- 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.KinesisAnalyticsV2.Types.EnvironmentProperties where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types.PropertyGroup+import qualified Amazonka.Prelude as Prelude++-- | Describes execution properties for a Flink-based Kinesis Data Analytics+-- application.+--+-- /See:/ 'newEnvironmentProperties' smart constructor.+data EnvironmentProperties = EnvironmentProperties'+  { -- | Describes the execution property groups.+    propertyGroups :: [PropertyGroup]+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'EnvironmentProperties' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'propertyGroups', 'environmentProperties_propertyGroups' - Describes the execution property groups.+newEnvironmentProperties ::+  EnvironmentProperties+newEnvironmentProperties =+  EnvironmentProperties'+    { propertyGroups =+        Prelude.mempty+    }++-- | Describes the execution property groups.+environmentProperties_propertyGroups :: Lens.Lens' EnvironmentProperties [PropertyGroup]+environmentProperties_propertyGroups = Lens.lens (\EnvironmentProperties' {propertyGroups} -> propertyGroups) (\s@EnvironmentProperties' {} a -> s {propertyGroups = a} :: EnvironmentProperties) Prelude.. Lens.coerced++instance Prelude.Hashable EnvironmentProperties where+  hashWithSalt _salt EnvironmentProperties' {..} =+    _salt `Prelude.hashWithSalt` propertyGroups++instance Prelude.NFData EnvironmentProperties where+  rnf EnvironmentProperties' {..} =+    Prelude.rnf propertyGroups++instance Data.ToJSON EnvironmentProperties where+  toJSON EnvironmentProperties' {..} =+    Data.object+      ( Prelude.catMaybes+          [ Prelude.Just+              ("PropertyGroups" Data..= propertyGroups)+          ]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/EnvironmentPropertyDescriptions.hs view
@@ -0,0 +1,88 @@+{-# 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.KinesisAnalyticsV2.Types.EnvironmentPropertyDescriptions+-- 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.KinesisAnalyticsV2.Types.EnvironmentPropertyDescriptions where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types.PropertyGroup+import qualified Amazonka.Prelude as Prelude++-- | Describes the execution properties for an Apache Flink runtime.+--+-- /See:/ 'newEnvironmentPropertyDescriptions' smart constructor.+data EnvironmentPropertyDescriptions = EnvironmentPropertyDescriptions'+  { -- | Describes the execution property groups.+    propertyGroupDescriptions :: Prelude.Maybe [PropertyGroup]+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'EnvironmentPropertyDescriptions' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'propertyGroupDescriptions', 'environmentPropertyDescriptions_propertyGroupDescriptions' - Describes the execution property groups.+newEnvironmentPropertyDescriptions ::+  EnvironmentPropertyDescriptions+newEnvironmentPropertyDescriptions =+  EnvironmentPropertyDescriptions'+    { propertyGroupDescriptions =+        Prelude.Nothing+    }++-- | Describes the execution property groups.+environmentPropertyDescriptions_propertyGroupDescriptions :: Lens.Lens' EnvironmentPropertyDescriptions (Prelude.Maybe [PropertyGroup])+environmentPropertyDescriptions_propertyGroupDescriptions = Lens.lens (\EnvironmentPropertyDescriptions' {propertyGroupDescriptions} -> propertyGroupDescriptions) (\s@EnvironmentPropertyDescriptions' {} a -> s {propertyGroupDescriptions = a} :: EnvironmentPropertyDescriptions) Prelude.. Lens.mapping Lens.coerced++instance+  Data.FromJSON+    EnvironmentPropertyDescriptions+  where+  parseJSON =+    Data.withObject+      "EnvironmentPropertyDescriptions"+      ( \x ->+          EnvironmentPropertyDescriptions'+            Prelude.<$> ( x+                            Data..:? "PropertyGroupDescriptions"+                            Data..!= Prelude.mempty+                        )+      )++instance+  Prelude.Hashable+    EnvironmentPropertyDescriptions+  where+  hashWithSalt+    _salt+    EnvironmentPropertyDescriptions' {..} =+      _salt+        `Prelude.hashWithSalt` propertyGroupDescriptions++instance+  Prelude.NFData+    EnvironmentPropertyDescriptions+  where+  rnf EnvironmentPropertyDescriptions' {..} =+    Prelude.rnf propertyGroupDescriptions
+ gen/Amazonka/KinesisAnalyticsV2/Types/EnvironmentPropertyUpdates.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.KinesisAnalyticsV2.Types.EnvironmentPropertyUpdates+-- 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.KinesisAnalyticsV2.Types.EnvironmentPropertyUpdates where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types.PropertyGroup+import qualified Amazonka.Prelude as Prelude++-- | Describes updates to the execution property groups for a Flink-based+-- Kinesis Data Analytics application or a Studio notebook.+--+-- /See:/ 'newEnvironmentPropertyUpdates' smart constructor.+data EnvironmentPropertyUpdates = EnvironmentPropertyUpdates'+  { -- | Describes updates to the execution property groups.+    propertyGroups :: [PropertyGroup]+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'EnvironmentPropertyUpdates' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'propertyGroups', 'environmentPropertyUpdates_propertyGroups' - Describes updates to the execution property groups.+newEnvironmentPropertyUpdates ::+  EnvironmentPropertyUpdates+newEnvironmentPropertyUpdates =+  EnvironmentPropertyUpdates'+    { propertyGroups =+        Prelude.mempty+    }++-- | Describes updates to the execution property groups.+environmentPropertyUpdates_propertyGroups :: Lens.Lens' EnvironmentPropertyUpdates [PropertyGroup]+environmentPropertyUpdates_propertyGroups = Lens.lens (\EnvironmentPropertyUpdates' {propertyGroups} -> propertyGroups) (\s@EnvironmentPropertyUpdates' {} a -> s {propertyGroups = a} :: EnvironmentPropertyUpdates) Prelude.. Lens.coerced++instance Prelude.Hashable EnvironmentPropertyUpdates where+  hashWithSalt _salt EnvironmentPropertyUpdates' {..} =+    _salt `Prelude.hashWithSalt` propertyGroups++instance Prelude.NFData EnvironmentPropertyUpdates where+  rnf EnvironmentPropertyUpdates' {..} =+    Prelude.rnf propertyGroups++instance Data.ToJSON EnvironmentPropertyUpdates where+  toJSON EnvironmentPropertyUpdates' {..} =+    Data.object+      ( Prelude.catMaybes+          [ Prelude.Just+              ("PropertyGroups" Data..= propertyGroups)+          ]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/FlinkApplicationConfiguration.hs view
@@ -0,0 +1,127 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.KinesisAnalyticsV2.Types.FlinkApplicationConfiguration+-- 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.KinesisAnalyticsV2.Types.FlinkApplicationConfiguration where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types.CheckpointConfiguration+import Amazonka.KinesisAnalyticsV2.Types.MonitoringConfiguration+import Amazonka.KinesisAnalyticsV2.Types.ParallelismConfiguration+import qualified Amazonka.Prelude as Prelude++-- | Describes configuration parameters for a Flink-based Kinesis Data+-- Analytics application or a Studio notebook.+--+-- /See:/ 'newFlinkApplicationConfiguration' smart constructor.+data FlinkApplicationConfiguration = FlinkApplicationConfiguration'+  { -- | Describes an application\'s checkpointing configuration. Checkpointing+    -- is the process of persisting application state for fault tolerance. For+    -- more information, see+    -- <https://ci.apache.org/projects/flink/flink-docs-release-1.8/concepts/programming-model.html#checkpoints-for-fault-tolerance Checkpoints for Fault Tolerance>+    -- in the+    -- <https://ci.apache.org/projects/flink/flink-docs-release-1.8/ Apache Flink Documentation>.+    checkpointConfiguration :: Prelude.Maybe CheckpointConfiguration,+    -- | Describes configuration parameters for Amazon CloudWatch logging for an+    -- application.+    monitoringConfiguration :: Prelude.Maybe MonitoringConfiguration,+    -- | Describes parameters for how an application executes multiple tasks+    -- simultaneously.+    parallelismConfiguration :: Prelude.Maybe ParallelismConfiguration+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'FlinkApplicationConfiguration' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'checkpointConfiguration', 'flinkApplicationConfiguration_checkpointConfiguration' - Describes an application\'s checkpointing configuration. Checkpointing+-- is the process of persisting application state for fault tolerance. For+-- more information, see+-- <https://ci.apache.org/projects/flink/flink-docs-release-1.8/concepts/programming-model.html#checkpoints-for-fault-tolerance Checkpoints for Fault Tolerance>+-- in the+-- <https://ci.apache.org/projects/flink/flink-docs-release-1.8/ Apache Flink Documentation>.+--+-- 'monitoringConfiguration', 'flinkApplicationConfiguration_monitoringConfiguration' - Describes configuration parameters for Amazon CloudWatch logging for an+-- application.+--+-- 'parallelismConfiguration', 'flinkApplicationConfiguration_parallelismConfiguration' - Describes parameters for how an application executes multiple tasks+-- simultaneously.+newFlinkApplicationConfiguration ::+  FlinkApplicationConfiguration+newFlinkApplicationConfiguration =+  FlinkApplicationConfiguration'+    { checkpointConfiguration =+        Prelude.Nothing,+      monitoringConfiguration = Prelude.Nothing,+      parallelismConfiguration = Prelude.Nothing+    }++-- | Describes an application\'s checkpointing configuration. Checkpointing+-- is the process of persisting application state for fault tolerance. For+-- more information, see+-- <https://ci.apache.org/projects/flink/flink-docs-release-1.8/concepts/programming-model.html#checkpoints-for-fault-tolerance Checkpoints for Fault Tolerance>+-- in the+-- <https://ci.apache.org/projects/flink/flink-docs-release-1.8/ Apache Flink Documentation>.+flinkApplicationConfiguration_checkpointConfiguration :: Lens.Lens' FlinkApplicationConfiguration (Prelude.Maybe CheckpointConfiguration)+flinkApplicationConfiguration_checkpointConfiguration = Lens.lens (\FlinkApplicationConfiguration' {checkpointConfiguration} -> checkpointConfiguration) (\s@FlinkApplicationConfiguration' {} a -> s {checkpointConfiguration = a} :: FlinkApplicationConfiguration)++-- | Describes configuration parameters for Amazon CloudWatch logging for an+-- application.+flinkApplicationConfiguration_monitoringConfiguration :: Lens.Lens' FlinkApplicationConfiguration (Prelude.Maybe MonitoringConfiguration)+flinkApplicationConfiguration_monitoringConfiguration = Lens.lens (\FlinkApplicationConfiguration' {monitoringConfiguration} -> monitoringConfiguration) (\s@FlinkApplicationConfiguration' {} a -> s {monitoringConfiguration = a} :: FlinkApplicationConfiguration)++-- | Describes parameters for how an application executes multiple tasks+-- simultaneously.+flinkApplicationConfiguration_parallelismConfiguration :: Lens.Lens' FlinkApplicationConfiguration (Prelude.Maybe ParallelismConfiguration)+flinkApplicationConfiguration_parallelismConfiguration = Lens.lens (\FlinkApplicationConfiguration' {parallelismConfiguration} -> parallelismConfiguration) (\s@FlinkApplicationConfiguration' {} a -> s {parallelismConfiguration = a} :: FlinkApplicationConfiguration)++instance+  Prelude.Hashable+    FlinkApplicationConfiguration+  where+  hashWithSalt _salt FlinkApplicationConfiguration' {..} =+    _salt+      `Prelude.hashWithSalt` checkpointConfiguration+      `Prelude.hashWithSalt` monitoringConfiguration+      `Prelude.hashWithSalt` parallelismConfiguration++instance Prelude.NFData FlinkApplicationConfiguration where+  rnf FlinkApplicationConfiguration' {..} =+    Prelude.rnf checkpointConfiguration+      `Prelude.seq` Prelude.rnf monitoringConfiguration+      `Prelude.seq` Prelude.rnf parallelismConfiguration++instance Data.ToJSON FlinkApplicationConfiguration where+  toJSON FlinkApplicationConfiguration' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("CheckpointConfiguration" Data..=)+              Prelude.<$> checkpointConfiguration,+            ("MonitoringConfiguration" Data..=)+              Prelude.<$> monitoringConfiguration,+            ("ParallelismConfiguration" Data..=)+              Prelude.<$> parallelismConfiguration+          ]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/FlinkApplicationConfigurationDescription.hs view
@@ -0,0 +1,157 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.KinesisAnalyticsV2.Types.FlinkApplicationConfigurationDescription+-- 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.KinesisAnalyticsV2.Types.FlinkApplicationConfigurationDescription where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types.CheckpointConfigurationDescription+import Amazonka.KinesisAnalyticsV2.Types.MonitoringConfigurationDescription+import Amazonka.KinesisAnalyticsV2.Types.ParallelismConfigurationDescription+import qualified Amazonka.Prelude as Prelude++-- | Describes configuration parameters for a Flink-based Kinesis Data+-- Analytics application.+--+-- /See:/ 'newFlinkApplicationConfigurationDescription' smart constructor.+data FlinkApplicationConfigurationDescription = FlinkApplicationConfigurationDescription'+  { -- | Describes an application\'s checkpointing configuration. Checkpointing+    -- is the process of persisting application state for fault tolerance.+    checkpointConfigurationDescription :: Prelude.Maybe CheckpointConfigurationDescription,+    -- | The job plan for an application. For more information about the job+    -- plan, see+    -- <https://ci.apache.org/projects/flink/flink-docs-release-1.8/internals/job_scheduling.html Jobs and Scheduling>+    -- in the+    -- <https://ci.apache.org/projects/flink/flink-docs-release-1.8/ Apache Flink Documentation>.+    -- To retrieve the job plan for the application, use the+    -- DescribeApplicationRequest$IncludeAdditionalDetails parameter of the+    -- DescribeApplication operation.+    jobPlanDescription :: Prelude.Maybe Prelude.Text,+    -- | Describes configuration parameters for Amazon CloudWatch logging for an+    -- application.+    monitoringConfigurationDescription :: Prelude.Maybe MonitoringConfigurationDescription,+    -- | Describes parameters for how an application executes multiple tasks+    -- simultaneously.+    parallelismConfigurationDescription :: Prelude.Maybe ParallelismConfigurationDescription+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'FlinkApplicationConfigurationDescription' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'checkpointConfigurationDescription', 'flinkApplicationConfigurationDescription_checkpointConfigurationDescription' - Describes an application\'s checkpointing configuration. Checkpointing+-- is the process of persisting application state for fault tolerance.+--+-- 'jobPlanDescription', 'flinkApplicationConfigurationDescription_jobPlanDescription' - The job plan for an application. For more information about the job+-- plan, see+-- <https://ci.apache.org/projects/flink/flink-docs-release-1.8/internals/job_scheduling.html Jobs and Scheduling>+-- in the+-- <https://ci.apache.org/projects/flink/flink-docs-release-1.8/ Apache Flink Documentation>.+-- To retrieve the job plan for the application, use the+-- DescribeApplicationRequest$IncludeAdditionalDetails parameter of the+-- DescribeApplication operation.+--+-- 'monitoringConfigurationDescription', 'flinkApplicationConfigurationDescription_monitoringConfigurationDescription' - Describes configuration parameters for Amazon CloudWatch logging for an+-- application.+--+-- 'parallelismConfigurationDescription', 'flinkApplicationConfigurationDescription_parallelismConfigurationDescription' - Describes parameters for how an application executes multiple tasks+-- simultaneously.+newFlinkApplicationConfigurationDescription ::+  FlinkApplicationConfigurationDescription+newFlinkApplicationConfigurationDescription =+  FlinkApplicationConfigurationDescription'+    { checkpointConfigurationDescription =+        Prelude.Nothing,+      jobPlanDescription =+        Prelude.Nothing,+      monitoringConfigurationDescription =+        Prelude.Nothing,+      parallelismConfigurationDescription =+        Prelude.Nothing+    }++-- | Describes an application\'s checkpointing configuration. Checkpointing+-- is the process of persisting application state for fault tolerance.+flinkApplicationConfigurationDescription_checkpointConfigurationDescription :: Lens.Lens' FlinkApplicationConfigurationDescription (Prelude.Maybe CheckpointConfigurationDescription)+flinkApplicationConfigurationDescription_checkpointConfigurationDescription = Lens.lens (\FlinkApplicationConfigurationDescription' {checkpointConfigurationDescription} -> checkpointConfigurationDescription) (\s@FlinkApplicationConfigurationDescription' {} a -> s {checkpointConfigurationDescription = a} :: FlinkApplicationConfigurationDescription)++-- | The job plan for an application. For more information about the job+-- plan, see+-- <https://ci.apache.org/projects/flink/flink-docs-release-1.8/internals/job_scheduling.html Jobs and Scheduling>+-- in the+-- <https://ci.apache.org/projects/flink/flink-docs-release-1.8/ Apache Flink Documentation>.+-- To retrieve the job plan for the application, use the+-- DescribeApplicationRequest$IncludeAdditionalDetails parameter of the+-- DescribeApplication operation.+flinkApplicationConfigurationDescription_jobPlanDescription :: Lens.Lens' FlinkApplicationConfigurationDescription (Prelude.Maybe Prelude.Text)+flinkApplicationConfigurationDescription_jobPlanDescription = Lens.lens (\FlinkApplicationConfigurationDescription' {jobPlanDescription} -> jobPlanDescription) (\s@FlinkApplicationConfigurationDescription' {} a -> s {jobPlanDescription = a} :: FlinkApplicationConfigurationDescription)++-- | Describes configuration parameters for Amazon CloudWatch logging for an+-- application.+flinkApplicationConfigurationDescription_monitoringConfigurationDescription :: Lens.Lens' FlinkApplicationConfigurationDescription (Prelude.Maybe MonitoringConfigurationDescription)+flinkApplicationConfigurationDescription_monitoringConfigurationDescription = Lens.lens (\FlinkApplicationConfigurationDescription' {monitoringConfigurationDescription} -> monitoringConfigurationDescription) (\s@FlinkApplicationConfigurationDescription' {} a -> s {monitoringConfigurationDescription = a} :: FlinkApplicationConfigurationDescription)++-- | Describes parameters for how an application executes multiple tasks+-- simultaneously.+flinkApplicationConfigurationDescription_parallelismConfigurationDescription :: Lens.Lens' FlinkApplicationConfigurationDescription (Prelude.Maybe ParallelismConfigurationDescription)+flinkApplicationConfigurationDescription_parallelismConfigurationDescription = Lens.lens (\FlinkApplicationConfigurationDescription' {parallelismConfigurationDescription} -> parallelismConfigurationDescription) (\s@FlinkApplicationConfigurationDescription' {} a -> s {parallelismConfigurationDescription = a} :: FlinkApplicationConfigurationDescription)++instance+  Data.FromJSON+    FlinkApplicationConfigurationDescription+  where+  parseJSON =+    Data.withObject+      "FlinkApplicationConfigurationDescription"+      ( \x ->+          FlinkApplicationConfigurationDescription'+            Prelude.<$> (x Data..:? "CheckpointConfigurationDescription")+            Prelude.<*> (x Data..:? "JobPlanDescription")+            Prelude.<*> (x Data..:? "MonitoringConfigurationDescription")+            Prelude.<*> (x Data..:? "ParallelismConfigurationDescription")+      )++instance+  Prelude.Hashable+    FlinkApplicationConfigurationDescription+  where+  hashWithSalt+    _salt+    FlinkApplicationConfigurationDescription' {..} =+      _salt+        `Prelude.hashWithSalt` checkpointConfigurationDescription+        `Prelude.hashWithSalt` jobPlanDescription+        `Prelude.hashWithSalt` monitoringConfigurationDescription+        `Prelude.hashWithSalt` parallelismConfigurationDescription++instance+  Prelude.NFData+    FlinkApplicationConfigurationDescription+  where+  rnf FlinkApplicationConfigurationDescription' {..} =+    Prelude.rnf checkpointConfigurationDescription+      `Prelude.seq` Prelude.rnf jobPlanDescription+      `Prelude.seq` Prelude.rnf monitoringConfigurationDescription+      `Prelude.seq` Prelude.rnf parallelismConfigurationDescription
+ gen/Amazonka/KinesisAnalyticsV2/Types/FlinkApplicationConfigurationUpdate.hs view
@@ -0,0 +1,128 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.KinesisAnalyticsV2.Types.FlinkApplicationConfigurationUpdate+-- 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.KinesisAnalyticsV2.Types.FlinkApplicationConfigurationUpdate where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types.CheckpointConfigurationUpdate+import Amazonka.KinesisAnalyticsV2.Types.MonitoringConfigurationUpdate+import Amazonka.KinesisAnalyticsV2.Types.ParallelismConfigurationUpdate+import qualified Amazonka.Prelude as Prelude++-- | Describes updates to the configuration parameters for a Flink-based+-- Kinesis Data Analytics application.+--+-- /See:/ 'newFlinkApplicationConfigurationUpdate' smart constructor.+data FlinkApplicationConfigurationUpdate = FlinkApplicationConfigurationUpdate'+  { -- | Describes updates to an application\'s checkpointing configuration.+    -- Checkpointing is the process of persisting application state for fault+    -- tolerance.+    checkpointConfigurationUpdate :: Prelude.Maybe CheckpointConfigurationUpdate,+    -- | Describes updates to the configuration parameters for Amazon CloudWatch+    -- logging for an application.+    monitoringConfigurationUpdate :: Prelude.Maybe MonitoringConfigurationUpdate,+    -- | Describes updates to the parameters for how an application executes+    -- multiple tasks simultaneously.+    parallelismConfigurationUpdate :: Prelude.Maybe ParallelismConfigurationUpdate+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'FlinkApplicationConfigurationUpdate' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'checkpointConfigurationUpdate', 'flinkApplicationConfigurationUpdate_checkpointConfigurationUpdate' - Describes updates to an application\'s checkpointing configuration.+-- Checkpointing is the process of persisting application state for fault+-- tolerance.+--+-- 'monitoringConfigurationUpdate', 'flinkApplicationConfigurationUpdate_monitoringConfigurationUpdate' - Describes updates to the configuration parameters for Amazon CloudWatch+-- logging for an application.+--+-- 'parallelismConfigurationUpdate', 'flinkApplicationConfigurationUpdate_parallelismConfigurationUpdate' - Describes updates to the parameters for how an application executes+-- multiple tasks simultaneously.+newFlinkApplicationConfigurationUpdate ::+  FlinkApplicationConfigurationUpdate+newFlinkApplicationConfigurationUpdate =+  FlinkApplicationConfigurationUpdate'+    { checkpointConfigurationUpdate =+        Prelude.Nothing,+      monitoringConfigurationUpdate =+        Prelude.Nothing,+      parallelismConfigurationUpdate =+        Prelude.Nothing+    }++-- | Describes updates to an application\'s checkpointing configuration.+-- Checkpointing is the process of persisting application state for fault+-- tolerance.+flinkApplicationConfigurationUpdate_checkpointConfigurationUpdate :: Lens.Lens' FlinkApplicationConfigurationUpdate (Prelude.Maybe CheckpointConfigurationUpdate)+flinkApplicationConfigurationUpdate_checkpointConfigurationUpdate = Lens.lens (\FlinkApplicationConfigurationUpdate' {checkpointConfigurationUpdate} -> checkpointConfigurationUpdate) (\s@FlinkApplicationConfigurationUpdate' {} a -> s {checkpointConfigurationUpdate = a} :: FlinkApplicationConfigurationUpdate)++-- | Describes updates to the configuration parameters for Amazon CloudWatch+-- logging for an application.+flinkApplicationConfigurationUpdate_monitoringConfigurationUpdate :: Lens.Lens' FlinkApplicationConfigurationUpdate (Prelude.Maybe MonitoringConfigurationUpdate)+flinkApplicationConfigurationUpdate_monitoringConfigurationUpdate = Lens.lens (\FlinkApplicationConfigurationUpdate' {monitoringConfigurationUpdate} -> monitoringConfigurationUpdate) (\s@FlinkApplicationConfigurationUpdate' {} a -> s {monitoringConfigurationUpdate = a} :: FlinkApplicationConfigurationUpdate)++-- | Describes updates to the parameters for how an application executes+-- multiple tasks simultaneously.+flinkApplicationConfigurationUpdate_parallelismConfigurationUpdate :: Lens.Lens' FlinkApplicationConfigurationUpdate (Prelude.Maybe ParallelismConfigurationUpdate)+flinkApplicationConfigurationUpdate_parallelismConfigurationUpdate = Lens.lens (\FlinkApplicationConfigurationUpdate' {parallelismConfigurationUpdate} -> parallelismConfigurationUpdate) (\s@FlinkApplicationConfigurationUpdate' {} a -> s {parallelismConfigurationUpdate = a} :: FlinkApplicationConfigurationUpdate)++instance+  Prelude.Hashable+    FlinkApplicationConfigurationUpdate+  where+  hashWithSalt+    _salt+    FlinkApplicationConfigurationUpdate' {..} =+      _salt+        `Prelude.hashWithSalt` checkpointConfigurationUpdate+        `Prelude.hashWithSalt` monitoringConfigurationUpdate+        `Prelude.hashWithSalt` parallelismConfigurationUpdate++instance+  Prelude.NFData+    FlinkApplicationConfigurationUpdate+  where+  rnf FlinkApplicationConfigurationUpdate' {..} =+    Prelude.rnf checkpointConfigurationUpdate+      `Prelude.seq` Prelude.rnf monitoringConfigurationUpdate+      `Prelude.seq` Prelude.rnf parallelismConfigurationUpdate++instance+  Data.ToJSON+    FlinkApplicationConfigurationUpdate+  where+  toJSON FlinkApplicationConfigurationUpdate' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("CheckpointConfigurationUpdate" Data..=)+              Prelude.<$> checkpointConfigurationUpdate,+            ("MonitoringConfigurationUpdate" Data..=)+              Prelude.<$> monitoringConfigurationUpdate,+            ("ParallelismConfigurationUpdate" Data..=)+              Prelude.<$> parallelismConfigurationUpdate+          ]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/FlinkRunConfiguration.hs view
@@ -0,0 +1,115 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.KinesisAnalyticsV2.Types.FlinkRunConfiguration+-- 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.KinesisAnalyticsV2.Types.FlinkRunConfiguration 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++-- | Describes the starting parameters for a Flink-based Kinesis Data+-- Analytics application.+--+-- /See:/ 'newFlinkRunConfiguration' smart constructor.+data FlinkRunConfiguration = FlinkRunConfiguration'+  { -- | When restoring from a snapshot, specifies whether the runtime is allowed+    -- to skip a state that cannot be mapped to the new program. This will+    -- happen if the program is updated between snapshots to remove stateful+    -- parameters, and state data in the snapshot no longer corresponds to+    -- valid application data. For more information, see+    -- <https://ci.apache.org/projects/flink/flink-docs-release-1.8/ops/state/savepoints.html#allowing-non-restored-state Allowing Non-Restored State>+    -- in the+    -- <https://ci.apache.org/projects/flink/flink-docs-release-1.8/ Apache Flink documentation>.+    --+    -- This value defaults to @false@. If you update your application without+    -- specifying this parameter, @AllowNonRestoredState@ will be set to+    -- @false@, even if it was previously set to @true@.+    allowNonRestoredState :: Prelude.Maybe Prelude.Bool+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'FlinkRunConfiguration' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'allowNonRestoredState', 'flinkRunConfiguration_allowNonRestoredState' - When restoring from a snapshot, specifies whether the runtime is allowed+-- to skip a state that cannot be mapped to the new program. This will+-- happen if the program is updated between snapshots to remove stateful+-- parameters, and state data in the snapshot no longer corresponds to+-- valid application data. For more information, see+-- <https://ci.apache.org/projects/flink/flink-docs-release-1.8/ops/state/savepoints.html#allowing-non-restored-state Allowing Non-Restored State>+-- in the+-- <https://ci.apache.org/projects/flink/flink-docs-release-1.8/ Apache Flink documentation>.+--+-- This value defaults to @false@. If you update your application without+-- specifying this parameter, @AllowNonRestoredState@ will be set to+-- @false@, even if it was previously set to @true@.+newFlinkRunConfiguration ::+  FlinkRunConfiguration+newFlinkRunConfiguration =+  FlinkRunConfiguration'+    { allowNonRestoredState =+        Prelude.Nothing+    }++-- | When restoring from a snapshot, specifies whether the runtime is allowed+-- to skip a state that cannot be mapped to the new program. This will+-- happen if the program is updated between snapshots to remove stateful+-- parameters, and state data in the snapshot no longer corresponds to+-- valid application data. For more information, see+-- <https://ci.apache.org/projects/flink/flink-docs-release-1.8/ops/state/savepoints.html#allowing-non-restored-state Allowing Non-Restored State>+-- in the+-- <https://ci.apache.org/projects/flink/flink-docs-release-1.8/ Apache Flink documentation>.+--+-- This value defaults to @false@. If you update your application without+-- specifying this parameter, @AllowNonRestoredState@ will be set to+-- @false@, even if it was previously set to @true@.+flinkRunConfiguration_allowNonRestoredState :: Lens.Lens' FlinkRunConfiguration (Prelude.Maybe Prelude.Bool)+flinkRunConfiguration_allowNonRestoredState = Lens.lens (\FlinkRunConfiguration' {allowNonRestoredState} -> allowNonRestoredState) (\s@FlinkRunConfiguration' {} a -> s {allowNonRestoredState = a} :: FlinkRunConfiguration)++instance Data.FromJSON FlinkRunConfiguration where+  parseJSON =+    Data.withObject+      "FlinkRunConfiguration"+      ( \x ->+          FlinkRunConfiguration'+            Prelude.<$> (x Data..:? "AllowNonRestoredState")+      )++instance Prelude.Hashable FlinkRunConfiguration where+  hashWithSalt _salt FlinkRunConfiguration' {..} =+    _salt `Prelude.hashWithSalt` allowNonRestoredState++instance Prelude.NFData FlinkRunConfiguration where+  rnf FlinkRunConfiguration' {..} =+    Prelude.rnf allowNonRestoredState++instance Data.ToJSON FlinkRunConfiguration where+  toJSON FlinkRunConfiguration' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("AllowNonRestoredState" Data..=)+              Prelude.<$> allowNonRestoredState+          ]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/GlueDataCatalogConfiguration.hs view
@@ -0,0 +1,76 @@+{-# 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.KinesisAnalyticsV2.Types.GlueDataCatalogConfiguration+-- 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.KinesisAnalyticsV2.Types.GlueDataCatalogConfiguration 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 configuration of the Glue Data Catalog that you use for Apache Flink+-- SQL queries and table API transforms that you write in an application.+--+-- /See:/ 'newGlueDataCatalogConfiguration' smart constructor.+data GlueDataCatalogConfiguration = GlueDataCatalogConfiguration'+  { -- | The Amazon Resource Name (ARN) of the database.+    databaseARN :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GlueDataCatalogConfiguration' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'databaseARN', 'glueDataCatalogConfiguration_databaseARN' - The Amazon Resource Name (ARN) of the database.+newGlueDataCatalogConfiguration ::+  -- | 'databaseARN'+  Prelude.Text ->+  GlueDataCatalogConfiguration+newGlueDataCatalogConfiguration pDatabaseARN_ =+  GlueDataCatalogConfiguration'+    { databaseARN =+        pDatabaseARN_+    }++-- | The Amazon Resource Name (ARN) of the database.+glueDataCatalogConfiguration_databaseARN :: Lens.Lens' GlueDataCatalogConfiguration Prelude.Text+glueDataCatalogConfiguration_databaseARN = Lens.lens (\GlueDataCatalogConfiguration' {databaseARN} -> databaseARN) (\s@GlueDataCatalogConfiguration' {} a -> s {databaseARN = a} :: GlueDataCatalogConfiguration)++instance+  Prelude.Hashable+    GlueDataCatalogConfiguration+  where+  hashWithSalt _salt GlueDataCatalogConfiguration' {..} =+    _salt `Prelude.hashWithSalt` databaseARN++instance Prelude.NFData GlueDataCatalogConfiguration where+  rnf GlueDataCatalogConfiguration' {..} =+    Prelude.rnf databaseARN++instance Data.ToJSON GlueDataCatalogConfiguration where+  toJSON GlueDataCatalogConfiguration' {..} =+    Data.object+      ( Prelude.catMaybes+          [Prelude.Just ("DatabaseARN" Data..= databaseARN)]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/GlueDataCatalogConfigurationDescription.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.KinesisAnalyticsV2.Types.GlueDataCatalogConfigurationDescription+-- 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.KinesisAnalyticsV2.Types.GlueDataCatalogConfigurationDescription 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 configuration of the Glue Data Catalog that you use for Apache Flink+-- SQL queries and table API transforms that you write in an application.+--+-- /See:/ 'newGlueDataCatalogConfigurationDescription' smart constructor.+data GlueDataCatalogConfigurationDescription = GlueDataCatalogConfigurationDescription'+  { -- | The Amazon Resource Name (ARN) of the database.+    databaseARN :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GlueDataCatalogConfigurationDescription' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'databaseARN', 'glueDataCatalogConfigurationDescription_databaseARN' - The Amazon Resource Name (ARN) of the database.+newGlueDataCatalogConfigurationDescription ::+  -- | 'databaseARN'+  Prelude.Text ->+  GlueDataCatalogConfigurationDescription+newGlueDataCatalogConfigurationDescription+  pDatabaseARN_ =+    GlueDataCatalogConfigurationDescription'+      { databaseARN =+          pDatabaseARN_+      }++-- | The Amazon Resource Name (ARN) of the database.+glueDataCatalogConfigurationDescription_databaseARN :: Lens.Lens' GlueDataCatalogConfigurationDescription Prelude.Text+glueDataCatalogConfigurationDescription_databaseARN = Lens.lens (\GlueDataCatalogConfigurationDescription' {databaseARN} -> databaseARN) (\s@GlueDataCatalogConfigurationDescription' {} a -> s {databaseARN = a} :: GlueDataCatalogConfigurationDescription)++instance+  Data.FromJSON+    GlueDataCatalogConfigurationDescription+  where+  parseJSON =+    Data.withObject+      "GlueDataCatalogConfigurationDescription"+      ( \x ->+          GlueDataCatalogConfigurationDescription'+            Prelude.<$> (x Data..: "DatabaseARN")+      )++instance+  Prelude.Hashable+    GlueDataCatalogConfigurationDescription+  where+  hashWithSalt+    _salt+    GlueDataCatalogConfigurationDescription' {..} =+      _salt `Prelude.hashWithSalt` databaseARN++instance+  Prelude.NFData+    GlueDataCatalogConfigurationDescription+  where+  rnf GlueDataCatalogConfigurationDescription' {..} =+    Prelude.rnf databaseARN
+ gen/Amazonka/KinesisAnalyticsV2/Types/GlueDataCatalogConfigurationUpdate.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.KinesisAnalyticsV2.Types.GlueDataCatalogConfigurationUpdate+-- 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.KinesisAnalyticsV2.Types.GlueDataCatalogConfigurationUpdate 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++-- | Updates to the configuration of the Glue Data Catalog that you use for+-- SQL queries that you write in a Kinesis Data Analytics Studio notebook.+--+-- /See:/ 'newGlueDataCatalogConfigurationUpdate' smart constructor.+data GlueDataCatalogConfigurationUpdate = GlueDataCatalogConfigurationUpdate'+  { -- | The updated Amazon Resource Name (ARN) of the database.+    databaseARNUpdate :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GlueDataCatalogConfigurationUpdate' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'databaseARNUpdate', 'glueDataCatalogConfigurationUpdate_databaseARNUpdate' - The updated Amazon Resource Name (ARN) of the database.+newGlueDataCatalogConfigurationUpdate ::+  -- | 'databaseARNUpdate'+  Prelude.Text ->+  GlueDataCatalogConfigurationUpdate+newGlueDataCatalogConfigurationUpdate+  pDatabaseARNUpdate_ =+    GlueDataCatalogConfigurationUpdate'+      { databaseARNUpdate =+          pDatabaseARNUpdate_+      }++-- | The updated Amazon Resource Name (ARN) of the database.+glueDataCatalogConfigurationUpdate_databaseARNUpdate :: Lens.Lens' GlueDataCatalogConfigurationUpdate Prelude.Text+glueDataCatalogConfigurationUpdate_databaseARNUpdate = Lens.lens (\GlueDataCatalogConfigurationUpdate' {databaseARNUpdate} -> databaseARNUpdate) (\s@GlueDataCatalogConfigurationUpdate' {} a -> s {databaseARNUpdate = a} :: GlueDataCatalogConfigurationUpdate)++instance+  Prelude.Hashable+    GlueDataCatalogConfigurationUpdate+  where+  hashWithSalt+    _salt+    GlueDataCatalogConfigurationUpdate' {..} =+      _salt `Prelude.hashWithSalt` databaseARNUpdate++instance+  Prelude.NFData+    GlueDataCatalogConfigurationUpdate+  where+  rnf GlueDataCatalogConfigurationUpdate' {..} =+    Prelude.rnf databaseARNUpdate++instance+  Data.ToJSON+    GlueDataCatalogConfigurationUpdate+  where+  toJSON GlueDataCatalogConfigurationUpdate' {..} =+    Data.object+      ( Prelude.catMaybes+          [ Prelude.Just+              ("DatabaseARNUpdate" Data..= databaseARNUpdate)+          ]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/Input.hs view
@@ -0,0 +1,189 @@+{-# 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.KinesisAnalyticsV2.Types.Input+-- 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.KinesisAnalyticsV2.Types.Input where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types.InputParallelism+import Amazonka.KinesisAnalyticsV2.Types.InputProcessingConfiguration+import Amazonka.KinesisAnalyticsV2.Types.KinesisFirehoseInput+import Amazonka.KinesisAnalyticsV2.Types.KinesisStreamsInput+import Amazonka.KinesisAnalyticsV2.Types.SourceSchema+import qualified Amazonka.Prelude as Prelude++-- | When you configure the application input for a SQL-based Kinesis Data+-- Analytics application, you specify the streaming source, the+-- in-application stream name that is created, and the mapping between the+-- two.+--+-- /See:/ 'newInput' smart constructor.+data Input = Input'+  { -- | Describes the number of in-application streams to create.+    inputParallelism :: Prelude.Maybe InputParallelism,+    -- | The InputProcessingConfiguration for the input. An input processor+    -- transforms records as they are received from the stream, before the+    -- application\'s SQL code executes. Currently, the only input processing+    -- configuration available is InputLambdaProcessor.+    inputProcessingConfiguration :: Prelude.Maybe InputProcessingConfiguration,+    -- | If the streaming source is an Amazon Kinesis Data Firehose delivery+    -- stream, identifies the delivery stream\'s ARN.+    kinesisFirehoseInput :: Prelude.Maybe KinesisFirehoseInput,+    -- | If the streaming source is an Amazon Kinesis data stream, identifies the+    -- stream\'s Amazon Resource Name (ARN).+    kinesisStreamsInput :: Prelude.Maybe KinesisStreamsInput,+    -- | The name prefix to use when creating an in-application stream. Suppose+    -- that you specify a prefix \"@MyInApplicationStream@.\" Kinesis Data+    -- Analytics then creates one or more (as per the @InputParallelism@ count+    -- you specified) in-application streams with the names+    -- \"@MyInApplicationStream_001@,\" \"@MyInApplicationStream_002@,\" and so+    -- on.+    namePrefix :: Prelude.Text,+    -- | Describes the format of the data in the streaming source, and how each+    -- data element maps to corresponding columns in the in-application stream+    -- that is being created.+    --+    -- Also used to describe the format of the reference data source.+    inputSchema :: SourceSchema+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'Input' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'inputParallelism', 'input_inputParallelism' - Describes the number of in-application streams to create.+--+-- 'inputProcessingConfiguration', 'input_inputProcessingConfiguration' - The InputProcessingConfiguration for the input. An input processor+-- transforms records as they are received from the stream, before the+-- application\'s SQL code executes. Currently, the only input processing+-- configuration available is InputLambdaProcessor.+--+-- 'kinesisFirehoseInput', 'input_kinesisFirehoseInput' - If the streaming source is an Amazon Kinesis Data Firehose delivery+-- stream, identifies the delivery stream\'s ARN.+--+-- 'kinesisStreamsInput', 'input_kinesisStreamsInput' - If the streaming source is an Amazon Kinesis data stream, identifies the+-- stream\'s Amazon Resource Name (ARN).+--+-- 'namePrefix', 'input_namePrefix' - The name prefix to use when creating an in-application stream. Suppose+-- that you specify a prefix \"@MyInApplicationStream@.\" Kinesis Data+-- Analytics then creates one or more (as per the @InputParallelism@ count+-- you specified) in-application streams with the names+-- \"@MyInApplicationStream_001@,\" \"@MyInApplicationStream_002@,\" and so+-- on.+--+-- 'inputSchema', 'input_inputSchema' - Describes the format of the data in the streaming source, and how each+-- data element maps to corresponding columns in the in-application stream+-- that is being created.+--+-- Also used to describe the format of the reference data source.+newInput ::+  -- | 'namePrefix'+  Prelude.Text ->+  -- | 'inputSchema'+  SourceSchema ->+  Input+newInput pNamePrefix_ pInputSchema_ =+  Input'+    { inputParallelism = Prelude.Nothing,+      inputProcessingConfiguration = Prelude.Nothing,+      kinesisFirehoseInput = Prelude.Nothing,+      kinesisStreamsInput = Prelude.Nothing,+      namePrefix = pNamePrefix_,+      inputSchema = pInputSchema_+    }++-- | Describes the number of in-application streams to create.+input_inputParallelism :: Lens.Lens' Input (Prelude.Maybe InputParallelism)+input_inputParallelism = Lens.lens (\Input' {inputParallelism} -> inputParallelism) (\s@Input' {} a -> s {inputParallelism = a} :: Input)++-- | The InputProcessingConfiguration for the input. An input processor+-- transforms records as they are received from the stream, before the+-- application\'s SQL code executes. Currently, the only input processing+-- configuration available is InputLambdaProcessor.+input_inputProcessingConfiguration :: Lens.Lens' Input (Prelude.Maybe InputProcessingConfiguration)+input_inputProcessingConfiguration = Lens.lens (\Input' {inputProcessingConfiguration} -> inputProcessingConfiguration) (\s@Input' {} a -> s {inputProcessingConfiguration = a} :: Input)++-- | If the streaming source is an Amazon Kinesis Data Firehose delivery+-- stream, identifies the delivery stream\'s ARN.+input_kinesisFirehoseInput :: Lens.Lens' Input (Prelude.Maybe KinesisFirehoseInput)+input_kinesisFirehoseInput = Lens.lens (\Input' {kinesisFirehoseInput} -> kinesisFirehoseInput) (\s@Input' {} a -> s {kinesisFirehoseInput = a} :: Input)++-- | If the streaming source is an Amazon Kinesis data stream, identifies the+-- stream\'s Amazon Resource Name (ARN).+input_kinesisStreamsInput :: Lens.Lens' Input (Prelude.Maybe KinesisStreamsInput)+input_kinesisStreamsInput = Lens.lens (\Input' {kinesisStreamsInput} -> kinesisStreamsInput) (\s@Input' {} a -> s {kinesisStreamsInput = a} :: Input)++-- | The name prefix to use when creating an in-application stream. Suppose+-- that you specify a prefix \"@MyInApplicationStream@.\" Kinesis Data+-- Analytics then creates one or more (as per the @InputParallelism@ count+-- you specified) in-application streams with the names+-- \"@MyInApplicationStream_001@,\" \"@MyInApplicationStream_002@,\" and so+-- on.+input_namePrefix :: Lens.Lens' Input Prelude.Text+input_namePrefix = Lens.lens (\Input' {namePrefix} -> namePrefix) (\s@Input' {} a -> s {namePrefix = a} :: Input)++-- | Describes the format of the data in the streaming source, and how each+-- data element maps to corresponding columns in the in-application stream+-- that is being created.+--+-- Also used to describe the format of the reference data source.+input_inputSchema :: Lens.Lens' Input SourceSchema+input_inputSchema = Lens.lens (\Input' {inputSchema} -> inputSchema) (\s@Input' {} a -> s {inputSchema = a} :: Input)++instance Prelude.Hashable Input where+  hashWithSalt _salt Input' {..} =+    _salt+      `Prelude.hashWithSalt` inputParallelism+      `Prelude.hashWithSalt` inputProcessingConfiguration+      `Prelude.hashWithSalt` kinesisFirehoseInput+      `Prelude.hashWithSalt` kinesisStreamsInput+      `Prelude.hashWithSalt` namePrefix+      `Prelude.hashWithSalt` inputSchema++instance Prelude.NFData Input where+  rnf Input' {..} =+    Prelude.rnf inputParallelism+      `Prelude.seq` Prelude.rnf inputProcessingConfiguration+      `Prelude.seq` Prelude.rnf kinesisFirehoseInput+      `Prelude.seq` Prelude.rnf kinesisStreamsInput+      `Prelude.seq` Prelude.rnf namePrefix+      `Prelude.seq` Prelude.rnf inputSchema++instance Data.ToJSON Input where+  toJSON Input' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("InputParallelism" Data..=)+              Prelude.<$> inputParallelism,+            ("InputProcessingConfiguration" Data..=)+              Prelude.<$> inputProcessingConfiguration,+            ("KinesisFirehoseInput" Data..=)+              Prelude.<$> kinesisFirehoseInput,+            ("KinesisStreamsInput" Data..=)+              Prelude.<$> kinesisStreamsInput,+            Prelude.Just ("NamePrefix" Data..= namePrefix),+            Prelude.Just ("InputSchema" Data..= inputSchema)+          ]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/InputDescription.hs view
@@ -0,0 +1,212 @@+{-# 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.KinesisAnalyticsV2.Types.InputDescription+-- 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.KinesisAnalyticsV2.Types.InputDescription where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types.InputParallelism+import Amazonka.KinesisAnalyticsV2.Types.InputProcessingConfigurationDescription+import Amazonka.KinesisAnalyticsV2.Types.InputStartingPositionConfiguration+import Amazonka.KinesisAnalyticsV2.Types.KinesisFirehoseInputDescription+import Amazonka.KinesisAnalyticsV2.Types.KinesisStreamsInputDescription+import Amazonka.KinesisAnalyticsV2.Types.SourceSchema+import qualified Amazonka.Prelude as Prelude++-- | Describes the application input configuration for a SQL-based Kinesis+-- Data Analytics application.+--+-- /See:/ 'newInputDescription' smart constructor.+data InputDescription = InputDescription'+  { -- | Returns the in-application stream names that are mapped to the stream+    -- source.+    inAppStreamNames :: Prelude.Maybe [Prelude.Text],+    -- | The input ID that is associated with the application input. This is the+    -- ID that Kinesis Data Analytics assigns to each input configuration that+    -- you add to your application.+    inputId :: Prelude.Maybe Prelude.Text,+    -- | Describes the configured parallelism (number of in-application streams+    -- mapped to the streaming source).+    inputParallelism :: Prelude.Maybe InputParallelism,+    -- | The description of the preprocessor that executes on records in this+    -- input before the application\'s code is run.+    inputProcessingConfigurationDescription :: Prelude.Maybe InputProcessingConfigurationDescription,+    -- | Describes the format of the data in the streaming source, and how each+    -- data element maps to corresponding columns in the in-application stream+    -- that is being created.+    inputSchema :: Prelude.Maybe SourceSchema,+    -- | The point at which the application is configured to read from the input+    -- stream.+    inputStartingPositionConfiguration :: Prelude.Maybe InputStartingPositionConfiguration,+    -- | If a Kinesis Data Firehose delivery stream is configured as a streaming+    -- source, provides the delivery stream\'s ARN.+    kinesisFirehoseInputDescription :: Prelude.Maybe KinesisFirehoseInputDescription,+    -- | If a Kinesis data stream is configured as a streaming source, provides+    -- the Kinesis data stream\'s Amazon Resource Name (ARN).+    kinesisStreamsInputDescription :: Prelude.Maybe KinesisStreamsInputDescription,+    -- | The in-application name prefix.+    namePrefix :: Prelude.Maybe Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'InputDescription' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'inAppStreamNames', 'inputDescription_inAppStreamNames' - Returns the in-application stream names that are mapped to the stream+-- source.+--+-- 'inputId', 'inputDescription_inputId' - The input ID that is associated with the application input. This is the+-- ID that Kinesis Data Analytics assigns to each input configuration that+-- you add to your application.+--+-- 'inputParallelism', 'inputDescription_inputParallelism' - Describes the configured parallelism (number of in-application streams+-- mapped to the streaming source).+--+-- 'inputProcessingConfigurationDescription', 'inputDescription_inputProcessingConfigurationDescription' - The description of the preprocessor that executes on records in this+-- input before the application\'s code is run.+--+-- 'inputSchema', 'inputDescription_inputSchema' - Describes the format of the data in the streaming source, and how each+-- data element maps to corresponding columns in the in-application stream+-- that is being created.+--+-- 'inputStartingPositionConfiguration', 'inputDescription_inputStartingPositionConfiguration' - The point at which the application is configured to read from the input+-- stream.+--+-- 'kinesisFirehoseInputDescription', 'inputDescription_kinesisFirehoseInputDescription' - If a Kinesis Data Firehose delivery stream is configured as a streaming+-- source, provides the delivery stream\'s ARN.+--+-- 'kinesisStreamsInputDescription', 'inputDescription_kinesisStreamsInputDescription' - If a Kinesis data stream is configured as a streaming source, provides+-- the Kinesis data stream\'s Amazon Resource Name (ARN).+--+-- 'namePrefix', 'inputDescription_namePrefix' - The in-application name prefix.+newInputDescription ::+  InputDescription+newInputDescription =+  InputDescription'+    { inAppStreamNames =+        Prelude.Nothing,+      inputId = Prelude.Nothing,+      inputParallelism = Prelude.Nothing,+      inputProcessingConfigurationDescription =+        Prelude.Nothing,+      inputSchema = Prelude.Nothing,+      inputStartingPositionConfiguration = Prelude.Nothing,+      kinesisFirehoseInputDescription = Prelude.Nothing,+      kinesisStreamsInputDescription = Prelude.Nothing,+      namePrefix = Prelude.Nothing+    }++-- | Returns the in-application stream names that are mapped to the stream+-- source.+inputDescription_inAppStreamNames :: Lens.Lens' InputDescription (Prelude.Maybe [Prelude.Text])+inputDescription_inAppStreamNames = Lens.lens (\InputDescription' {inAppStreamNames} -> inAppStreamNames) (\s@InputDescription' {} a -> s {inAppStreamNames = a} :: InputDescription) Prelude.. Lens.mapping Lens.coerced++-- | The input ID that is associated with the application input. This is the+-- ID that Kinesis Data Analytics assigns to each input configuration that+-- you add to your application.+inputDescription_inputId :: Lens.Lens' InputDescription (Prelude.Maybe Prelude.Text)+inputDescription_inputId = Lens.lens (\InputDescription' {inputId} -> inputId) (\s@InputDescription' {} a -> s {inputId = a} :: InputDescription)++-- | Describes the configured parallelism (number of in-application streams+-- mapped to the streaming source).+inputDescription_inputParallelism :: Lens.Lens' InputDescription (Prelude.Maybe InputParallelism)+inputDescription_inputParallelism = Lens.lens (\InputDescription' {inputParallelism} -> inputParallelism) (\s@InputDescription' {} a -> s {inputParallelism = a} :: InputDescription)++-- | The description of the preprocessor that executes on records in this+-- input before the application\'s code is run.+inputDescription_inputProcessingConfigurationDescription :: Lens.Lens' InputDescription (Prelude.Maybe InputProcessingConfigurationDescription)+inputDescription_inputProcessingConfigurationDescription = Lens.lens (\InputDescription' {inputProcessingConfigurationDescription} -> inputProcessingConfigurationDescription) (\s@InputDescription' {} a -> s {inputProcessingConfigurationDescription = a} :: InputDescription)++-- | Describes the format of the data in the streaming source, and how each+-- data element maps to corresponding columns in the in-application stream+-- that is being created.+inputDescription_inputSchema :: Lens.Lens' InputDescription (Prelude.Maybe SourceSchema)+inputDescription_inputSchema = Lens.lens (\InputDescription' {inputSchema} -> inputSchema) (\s@InputDescription' {} a -> s {inputSchema = a} :: InputDescription)++-- | The point at which the application is configured to read from the input+-- stream.+inputDescription_inputStartingPositionConfiguration :: Lens.Lens' InputDescription (Prelude.Maybe InputStartingPositionConfiguration)+inputDescription_inputStartingPositionConfiguration = Lens.lens (\InputDescription' {inputStartingPositionConfiguration} -> inputStartingPositionConfiguration) (\s@InputDescription' {} a -> s {inputStartingPositionConfiguration = a} :: InputDescription)++-- | If a Kinesis Data Firehose delivery stream is configured as a streaming+-- source, provides the delivery stream\'s ARN.+inputDescription_kinesisFirehoseInputDescription :: Lens.Lens' InputDescription (Prelude.Maybe KinesisFirehoseInputDescription)+inputDescription_kinesisFirehoseInputDescription = Lens.lens (\InputDescription' {kinesisFirehoseInputDescription} -> kinesisFirehoseInputDescription) (\s@InputDescription' {} a -> s {kinesisFirehoseInputDescription = a} :: InputDescription)++-- | If a Kinesis data stream is configured as a streaming source, provides+-- the Kinesis data stream\'s Amazon Resource Name (ARN).+inputDescription_kinesisStreamsInputDescription :: Lens.Lens' InputDescription (Prelude.Maybe KinesisStreamsInputDescription)+inputDescription_kinesisStreamsInputDescription = Lens.lens (\InputDescription' {kinesisStreamsInputDescription} -> kinesisStreamsInputDescription) (\s@InputDescription' {} a -> s {kinesisStreamsInputDescription = a} :: InputDescription)++-- | The in-application name prefix.+inputDescription_namePrefix :: Lens.Lens' InputDescription (Prelude.Maybe Prelude.Text)+inputDescription_namePrefix = Lens.lens (\InputDescription' {namePrefix} -> namePrefix) (\s@InputDescription' {} a -> s {namePrefix = a} :: InputDescription)++instance Data.FromJSON InputDescription where+  parseJSON =+    Data.withObject+      "InputDescription"+      ( \x ->+          InputDescription'+            Prelude.<$> ( x+                            Data..:? "InAppStreamNames"+                            Data..!= Prelude.mempty+                        )+            Prelude.<*> (x Data..:? "InputId")+            Prelude.<*> (x Data..:? "InputParallelism")+            Prelude.<*> ( x+                            Data..:? "InputProcessingConfigurationDescription"+                        )+            Prelude.<*> (x Data..:? "InputSchema")+            Prelude.<*> (x Data..:? "InputStartingPositionConfiguration")+            Prelude.<*> (x Data..:? "KinesisFirehoseInputDescription")+            Prelude.<*> (x Data..:? "KinesisStreamsInputDescription")+            Prelude.<*> (x Data..:? "NamePrefix")+      )++instance Prelude.Hashable InputDescription where+  hashWithSalt _salt InputDescription' {..} =+    _salt+      `Prelude.hashWithSalt` inAppStreamNames+      `Prelude.hashWithSalt` inputId+      `Prelude.hashWithSalt` inputParallelism+      `Prelude.hashWithSalt` inputProcessingConfigurationDescription+      `Prelude.hashWithSalt` inputSchema+      `Prelude.hashWithSalt` inputStartingPositionConfiguration+      `Prelude.hashWithSalt` kinesisFirehoseInputDescription+      `Prelude.hashWithSalt` kinesisStreamsInputDescription+      `Prelude.hashWithSalt` namePrefix++instance Prelude.NFData InputDescription where+  rnf InputDescription' {..} =+    Prelude.rnf inAppStreamNames+      `Prelude.seq` Prelude.rnf inputId+      `Prelude.seq` Prelude.rnf inputParallelism+      `Prelude.seq` Prelude.rnf inputProcessingConfigurationDescription+      `Prelude.seq` Prelude.rnf inputSchema+      `Prelude.seq` Prelude.rnf inputStartingPositionConfiguration+      `Prelude.seq` Prelude.rnf kinesisFirehoseInputDescription+      `Prelude.seq` Prelude.rnf kinesisStreamsInputDescription+      `Prelude.seq` Prelude.rnf namePrefix
+ gen/Amazonka/KinesisAnalyticsV2/Types/InputLambdaProcessor.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.KinesisAnalyticsV2.Types.InputLambdaProcessor+-- 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.KinesisAnalyticsV2.Types.InputLambdaProcessor 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++-- | An object that contains the Amazon Resource Name (ARN) of the Amazon+-- Lambda function that is used to preprocess records in the stream in a+-- SQL-based Kinesis Data Analytics application.+--+-- /See:/ 'newInputLambdaProcessor' smart constructor.+data InputLambdaProcessor = InputLambdaProcessor'+  { -- | The ARN of the Amazon Lambda function that operates on records in the+    -- stream.+    --+    -- To specify an earlier version of the Lambda function than the latest,+    -- include the Lambda function version in the Lambda function ARN. For more+    -- information about Lambda ARNs, see+    -- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#arn-syntax-lambda Example ARNs: Amazon Lambda>+    resourceARN :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'InputLambdaProcessor' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'inputLambdaProcessor_resourceARN' - The ARN of the Amazon Lambda function that operates on records in the+-- stream.+--+-- To specify an earlier version of the Lambda function than the latest,+-- include the Lambda function version in the Lambda function ARN. For more+-- information about Lambda ARNs, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#arn-syntax-lambda Example ARNs: Amazon Lambda>+newInputLambdaProcessor ::+  -- | 'resourceARN'+  Prelude.Text ->+  InputLambdaProcessor+newInputLambdaProcessor pResourceARN_ =+  InputLambdaProcessor' {resourceARN = pResourceARN_}++-- | The ARN of the Amazon Lambda function that operates on records in the+-- stream.+--+-- To specify an earlier version of the Lambda function than the latest,+-- include the Lambda function version in the Lambda function ARN. For more+-- information about Lambda ARNs, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#arn-syntax-lambda Example ARNs: Amazon Lambda>+inputLambdaProcessor_resourceARN :: Lens.Lens' InputLambdaProcessor Prelude.Text+inputLambdaProcessor_resourceARN = Lens.lens (\InputLambdaProcessor' {resourceARN} -> resourceARN) (\s@InputLambdaProcessor' {} a -> s {resourceARN = a} :: InputLambdaProcessor)++instance Prelude.Hashable InputLambdaProcessor where+  hashWithSalt _salt InputLambdaProcessor' {..} =+    _salt `Prelude.hashWithSalt` resourceARN++instance Prelude.NFData InputLambdaProcessor where+  rnf InputLambdaProcessor' {..} =+    Prelude.rnf resourceARN++instance Data.ToJSON InputLambdaProcessor where+  toJSON InputLambdaProcessor' {..} =+    Data.object+      ( Prelude.catMaybes+          [Prelude.Just ("ResourceARN" Data..= resourceARN)]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/InputLambdaProcessorDescription.hs view
@@ -0,0 +1,133 @@+{-# 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.KinesisAnalyticsV2.Types.InputLambdaProcessorDescription+-- 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.KinesisAnalyticsV2.Types.InputLambdaProcessorDescription 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++-- | For a SQL-based Kinesis Data Analytics application, an object that+-- contains the Amazon Resource Name (ARN) of the Amazon Lambda function+-- that is used to preprocess records in the stream.+--+-- /See:/ 'newInputLambdaProcessorDescription' smart constructor.+data InputLambdaProcessorDescription = InputLambdaProcessorDescription'+  { -- | The ARN of the IAM role that is used to access the Amazon Lambda+    -- function.+    --+    -- Provided for backward compatibility. Applications that are created with+    -- the current API version have an application-level service execution role+    -- rather than a resource-level role.+    roleARN :: Prelude.Maybe Prelude.Text,+    -- | The ARN of the Amazon Lambda function that is used to preprocess the+    -- records in the stream.+    --+    -- To specify an earlier version of the Lambda function than the latest,+    -- include the Lambda function version in the Lambda function ARN. For more+    -- information about Lambda ARNs, see+    -- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#arn-syntax-lambda Example ARNs: Amazon Lambda>+    resourceARN :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'InputLambdaProcessorDescription' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'roleARN', 'inputLambdaProcessorDescription_roleARN' - The ARN of the IAM role that is used to access the Amazon Lambda+-- function.+--+-- Provided for backward compatibility. Applications that are created with+-- the current API version have an application-level service execution role+-- rather than a resource-level role.+--+-- 'resourceARN', 'inputLambdaProcessorDescription_resourceARN' - The ARN of the Amazon Lambda function that is used to preprocess the+-- records in the stream.+--+-- To specify an earlier version of the Lambda function than the latest,+-- include the Lambda function version in the Lambda function ARN. For more+-- information about Lambda ARNs, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#arn-syntax-lambda Example ARNs: Amazon Lambda>+newInputLambdaProcessorDescription ::+  -- | 'resourceARN'+  Prelude.Text ->+  InputLambdaProcessorDescription+newInputLambdaProcessorDescription pResourceARN_ =+  InputLambdaProcessorDescription'+    { roleARN =+        Prelude.Nothing,+      resourceARN = pResourceARN_+    }++-- | The ARN of the IAM role that is used to access the Amazon Lambda+-- function.+--+-- Provided for backward compatibility. Applications that are created with+-- the current API version have an application-level service execution role+-- rather than a resource-level role.+inputLambdaProcessorDescription_roleARN :: Lens.Lens' InputLambdaProcessorDescription (Prelude.Maybe Prelude.Text)+inputLambdaProcessorDescription_roleARN = Lens.lens (\InputLambdaProcessorDescription' {roleARN} -> roleARN) (\s@InputLambdaProcessorDescription' {} a -> s {roleARN = a} :: InputLambdaProcessorDescription)++-- | The ARN of the Amazon Lambda function that is used to preprocess the+-- records in the stream.+--+-- To specify an earlier version of the Lambda function than the latest,+-- include the Lambda function version in the Lambda function ARN. For more+-- information about Lambda ARNs, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#arn-syntax-lambda Example ARNs: Amazon Lambda>+inputLambdaProcessorDescription_resourceARN :: Lens.Lens' InputLambdaProcessorDescription Prelude.Text+inputLambdaProcessorDescription_resourceARN = Lens.lens (\InputLambdaProcessorDescription' {resourceARN} -> resourceARN) (\s@InputLambdaProcessorDescription' {} a -> s {resourceARN = a} :: InputLambdaProcessorDescription)++instance+  Data.FromJSON+    InputLambdaProcessorDescription+  where+  parseJSON =+    Data.withObject+      "InputLambdaProcessorDescription"+      ( \x ->+          InputLambdaProcessorDescription'+            Prelude.<$> (x Data..:? "RoleARN")+            Prelude.<*> (x Data..: "ResourceARN")+      )++instance+  Prelude.Hashable+    InputLambdaProcessorDescription+  where+  hashWithSalt+    _salt+    InputLambdaProcessorDescription' {..} =+      _salt+        `Prelude.hashWithSalt` roleARN+        `Prelude.hashWithSalt` resourceARN++instance+  Prelude.NFData+    InputLambdaProcessorDescription+  where+  rnf InputLambdaProcessorDescription' {..} =+    Prelude.rnf roleARN+      `Prelude.seq` Prelude.rnf resourceARN
+ gen/Amazonka/KinesisAnalyticsV2/Types/InputLambdaProcessorUpdate.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.KinesisAnalyticsV2.Types.InputLambdaProcessorUpdate+-- 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.KinesisAnalyticsV2.Types.InputLambdaProcessorUpdate 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++-- | For a SQL-based Kinesis Data Analytics application, represents an update+-- to the InputLambdaProcessor that is used to preprocess the records in+-- the stream.+--+-- /See:/ 'newInputLambdaProcessorUpdate' smart constructor.+data InputLambdaProcessorUpdate = InputLambdaProcessorUpdate'+  { -- | The Amazon Resource Name (ARN) of the new Amazon Lambda function that is+    -- used to preprocess the records in the stream.+    --+    -- To specify an earlier version of the Lambda function than the latest,+    -- include the Lambda function version in the Lambda function ARN. For more+    -- information about Lambda ARNs, see+    -- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#arn-syntax-lambda Example ARNs: Amazon Lambda>+    resourceARNUpdate :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'InputLambdaProcessorUpdate' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'resourceARNUpdate', 'inputLambdaProcessorUpdate_resourceARNUpdate' - The Amazon Resource Name (ARN) of the new Amazon Lambda function that is+-- used to preprocess the records in the stream.+--+-- To specify an earlier version of the Lambda function than the latest,+-- include the Lambda function version in the Lambda function ARN. For more+-- information about Lambda ARNs, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#arn-syntax-lambda Example ARNs: Amazon Lambda>+newInputLambdaProcessorUpdate ::+  -- | 'resourceARNUpdate'+  Prelude.Text ->+  InputLambdaProcessorUpdate+newInputLambdaProcessorUpdate pResourceARNUpdate_ =+  InputLambdaProcessorUpdate'+    { resourceARNUpdate =+        pResourceARNUpdate_+    }++-- | The Amazon Resource Name (ARN) of the new Amazon Lambda function that is+-- used to preprocess the records in the stream.+--+-- To specify an earlier version of the Lambda function than the latest,+-- include the Lambda function version in the Lambda function ARN. For more+-- information about Lambda ARNs, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#arn-syntax-lambda Example ARNs: Amazon Lambda>+inputLambdaProcessorUpdate_resourceARNUpdate :: Lens.Lens' InputLambdaProcessorUpdate Prelude.Text+inputLambdaProcessorUpdate_resourceARNUpdate = Lens.lens (\InputLambdaProcessorUpdate' {resourceARNUpdate} -> resourceARNUpdate) (\s@InputLambdaProcessorUpdate' {} a -> s {resourceARNUpdate = a} :: InputLambdaProcessorUpdate)++instance Prelude.Hashable InputLambdaProcessorUpdate where+  hashWithSalt _salt InputLambdaProcessorUpdate' {..} =+    _salt `Prelude.hashWithSalt` resourceARNUpdate++instance Prelude.NFData InputLambdaProcessorUpdate where+  rnf InputLambdaProcessorUpdate' {..} =+    Prelude.rnf resourceARNUpdate++instance Data.ToJSON InputLambdaProcessorUpdate where+  toJSON InputLambdaProcessorUpdate' {..} =+    Data.object+      ( Prelude.catMaybes+          [ Prelude.Just+              ("ResourceARNUpdate" Data..= resourceARNUpdate)+          ]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/InputParallelism.hs view
@@ -0,0 +1,75 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.KinesisAnalyticsV2.Types.InputParallelism+-- 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.KinesisAnalyticsV2.Types.InputParallelism 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++-- | For a SQL-based Kinesis Data Analytics application, describes the number+-- of in-application streams to create for a given streaming source.+--+-- /See:/ 'newInputParallelism' smart constructor.+data InputParallelism = InputParallelism'+  { -- | The number of in-application streams to create.+    count :: Prelude.Maybe Prelude.Natural+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'InputParallelism' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'count', 'inputParallelism_count' - The number of in-application streams to create.+newInputParallelism ::+  InputParallelism+newInputParallelism =+  InputParallelism' {count = Prelude.Nothing}++-- | The number of in-application streams to create.+inputParallelism_count :: Lens.Lens' InputParallelism (Prelude.Maybe Prelude.Natural)+inputParallelism_count = Lens.lens (\InputParallelism' {count} -> count) (\s@InputParallelism' {} a -> s {count = a} :: InputParallelism)++instance Data.FromJSON InputParallelism where+  parseJSON =+    Data.withObject+      "InputParallelism"+      ( \x ->+          InputParallelism' Prelude.<$> (x Data..:? "Count")+      )++instance Prelude.Hashable InputParallelism where+  hashWithSalt _salt InputParallelism' {..} =+    _salt `Prelude.hashWithSalt` count++instance Prelude.NFData InputParallelism where+  rnf InputParallelism' {..} = Prelude.rnf count++instance Data.ToJSON InputParallelism where+  toJSON InputParallelism' {..} =+    Data.object+      ( Prelude.catMaybes+          [("Count" Data..=) Prelude.<$> count]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/InputParallelismUpdate.hs view
@@ -0,0 +1,76 @@+{-# 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.KinesisAnalyticsV2.Types.InputParallelismUpdate+-- 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.KinesisAnalyticsV2.Types.InputParallelismUpdate 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++-- | For a SQL-based Kinesis Data Analytics application, provides updates to+-- the parallelism count.+--+-- /See:/ 'newInputParallelismUpdate' smart constructor.+data InputParallelismUpdate = InputParallelismUpdate'+  { -- | The number of in-application streams to create for the specified+    -- streaming source.+    countUpdate :: Prelude.Natural+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'InputParallelismUpdate' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'countUpdate', 'inputParallelismUpdate_countUpdate' - The number of in-application streams to create for the specified+-- streaming source.+newInputParallelismUpdate ::+  -- | 'countUpdate'+  Prelude.Natural ->+  InputParallelismUpdate+newInputParallelismUpdate pCountUpdate_ =+  InputParallelismUpdate'+    { countUpdate =+        pCountUpdate_+    }++-- | The number of in-application streams to create for the specified+-- streaming source.+inputParallelismUpdate_countUpdate :: Lens.Lens' InputParallelismUpdate Prelude.Natural+inputParallelismUpdate_countUpdate = Lens.lens (\InputParallelismUpdate' {countUpdate} -> countUpdate) (\s@InputParallelismUpdate' {} a -> s {countUpdate = a} :: InputParallelismUpdate)++instance Prelude.Hashable InputParallelismUpdate where+  hashWithSalt _salt InputParallelismUpdate' {..} =+    _salt `Prelude.hashWithSalt` countUpdate++instance Prelude.NFData InputParallelismUpdate where+  rnf InputParallelismUpdate' {..} =+    Prelude.rnf countUpdate++instance Data.ToJSON InputParallelismUpdate where+  toJSON InputParallelismUpdate' {..} =+    Data.object+      ( Prelude.catMaybes+          [Prelude.Just ("CountUpdate" Data..= countUpdate)]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/InputProcessingConfiguration.hs view
@@ -0,0 +1,88 @@+{-# 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.KinesisAnalyticsV2.Types.InputProcessingConfiguration+-- 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.KinesisAnalyticsV2.Types.InputProcessingConfiguration where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types.InputLambdaProcessor+import qualified Amazonka.Prelude as Prelude++-- | For a SQL-based Kinesis Data Analytics application, describes a+-- processor that is used to preprocess the records in the stream before+-- being processed by your application code. Currently, the only input+-- processor available is+-- <https://docs.aws.amazon.com/lambda/ Amazon Lambda>.+--+-- /See:/ 'newInputProcessingConfiguration' smart constructor.+data InputProcessingConfiguration = InputProcessingConfiguration'+  { -- | The InputLambdaProcessor that is used to preprocess the records in the+    -- stream before being processed by your application code.+    inputLambdaProcessor :: InputLambdaProcessor+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'InputProcessingConfiguration' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'inputLambdaProcessor', 'inputProcessingConfiguration_inputLambdaProcessor' - The InputLambdaProcessor that is used to preprocess the records in the+-- stream before being processed by your application code.+newInputProcessingConfiguration ::+  -- | 'inputLambdaProcessor'+  InputLambdaProcessor ->+  InputProcessingConfiguration+newInputProcessingConfiguration+  pInputLambdaProcessor_ =+    InputProcessingConfiguration'+      { inputLambdaProcessor =+          pInputLambdaProcessor_+      }++-- | The InputLambdaProcessor that is used to preprocess the records in the+-- stream before being processed by your application code.+inputProcessingConfiguration_inputLambdaProcessor :: Lens.Lens' InputProcessingConfiguration InputLambdaProcessor+inputProcessingConfiguration_inputLambdaProcessor = Lens.lens (\InputProcessingConfiguration' {inputLambdaProcessor} -> inputLambdaProcessor) (\s@InputProcessingConfiguration' {} a -> s {inputLambdaProcessor = a} :: InputProcessingConfiguration)++instance+  Prelude.Hashable+    InputProcessingConfiguration+  where+  hashWithSalt _salt InputProcessingConfiguration' {..} =+    _salt `Prelude.hashWithSalt` inputLambdaProcessor++instance Prelude.NFData InputProcessingConfiguration where+  rnf InputProcessingConfiguration' {..} =+    Prelude.rnf inputLambdaProcessor++instance Data.ToJSON InputProcessingConfiguration where+  toJSON InputProcessingConfiguration' {..} =+    Data.object+      ( Prelude.catMaybes+          [ Prelude.Just+              ( "InputLambdaProcessor"+                  Data..= inputLambdaProcessor+              )+          ]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/InputProcessingConfigurationDescription.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.KinesisAnalyticsV2.Types.InputProcessingConfigurationDescription+-- 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.KinesisAnalyticsV2.Types.InputProcessingConfigurationDescription where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types.InputLambdaProcessorDescription+import qualified Amazonka.Prelude as Prelude++-- | For a SQL-based Kinesis Data Analytics application, provides the+-- configuration information about an input processor. Currently, the only+-- input processor available is+-- <https://docs.aws.amazon.com/lambda/ Amazon Lambda>.+--+-- /See:/ 'newInputProcessingConfigurationDescription' smart constructor.+data InputProcessingConfigurationDescription = InputProcessingConfigurationDescription'+  { -- | Provides configuration information about the associated+    -- InputLambdaProcessorDescription+    inputLambdaProcessorDescription :: Prelude.Maybe InputLambdaProcessorDescription+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'InputProcessingConfigurationDescription' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'inputLambdaProcessorDescription', 'inputProcessingConfigurationDescription_inputLambdaProcessorDescription' - Provides configuration information about the associated+-- InputLambdaProcessorDescription+newInputProcessingConfigurationDescription ::+  InputProcessingConfigurationDescription+newInputProcessingConfigurationDescription =+  InputProcessingConfigurationDescription'+    { inputLambdaProcessorDescription =+        Prelude.Nothing+    }++-- | Provides configuration information about the associated+-- InputLambdaProcessorDescription+inputProcessingConfigurationDescription_inputLambdaProcessorDescription :: Lens.Lens' InputProcessingConfigurationDescription (Prelude.Maybe InputLambdaProcessorDescription)+inputProcessingConfigurationDescription_inputLambdaProcessorDescription = Lens.lens (\InputProcessingConfigurationDescription' {inputLambdaProcessorDescription} -> inputLambdaProcessorDescription) (\s@InputProcessingConfigurationDescription' {} a -> s {inputLambdaProcessorDescription = a} :: InputProcessingConfigurationDescription)++instance+  Data.FromJSON+    InputProcessingConfigurationDescription+  where+  parseJSON =+    Data.withObject+      "InputProcessingConfigurationDescription"+      ( \x ->+          InputProcessingConfigurationDescription'+            Prelude.<$> (x Data..:? "InputLambdaProcessorDescription")+      )++instance+  Prelude.Hashable+    InputProcessingConfigurationDescription+  where+  hashWithSalt+    _salt+    InputProcessingConfigurationDescription' {..} =+      _salt+        `Prelude.hashWithSalt` inputLambdaProcessorDescription++instance+  Prelude.NFData+    InputProcessingConfigurationDescription+  where+  rnf InputProcessingConfigurationDescription' {..} =+    Prelude.rnf inputLambdaProcessorDescription
+ gen/Amazonka/KinesisAnalyticsV2/Types/InputProcessingConfigurationUpdate.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.KinesisAnalyticsV2.Types.InputProcessingConfigurationUpdate+-- 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.KinesisAnalyticsV2.Types.InputProcessingConfigurationUpdate where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types.InputLambdaProcessorUpdate+import qualified Amazonka.Prelude as Prelude++-- | For a SQL-based Kinesis Data Analytics application, describes updates to+-- an InputProcessingConfiguration.+--+-- /See:/ 'newInputProcessingConfigurationUpdate' smart constructor.+data InputProcessingConfigurationUpdate = InputProcessingConfigurationUpdate'+  { -- | Provides update information for an InputLambdaProcessor.+    inputLambdaProcessorUpdate :: InputLambdaProcessorUpdate+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'InputProcessingConfigurationUpdate' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'inputLambdaProcessorUpdate', 'inputProcessingConfigurationUpdate_inputLambdaProcessorUpdate' - Provides update information for an InputLambdaProcessor.+newInputProcessingConfigurationUpdate ::+  -- | 'inputLambdaProcessorUpdate'+  InputLambdaProcessorUpdate ->+  InputProcessingConfigurationUpdate+newInputProcessingConfigurationUpdate+  pInputLambdaProcessorUpdate_ =+    InputProcessingConfigurationUpdate'+      { inputLambdaProcessorUpdate =+          pInputLambdaProcessorUpdate_+      }++-- | Provides update information for an InputLambdaProcessor.+inputProcessingConfigurationUpdate_inputLambdaProcessorUpdate :: Lens.Lens' InputProcessingConfigurationUpdate InputLambdaProcessorUpdate+inputProcessingConfigurationUpdate_inputLambdaProcessorUpdate = Lens.lens (\InputProcessingConfigurationUpdate' {inputLambdaProcessorUpdate} -> inputLambdaProcessorUpdate) (\s@InputProcessingConfigurationUpdate' {} a -> s {inputLambdaProcessorUpdate = a} :: InputProcessingConfigurationUpdate)++instance+  Prelude.Hashable+    InputProcessingConfigurationUpdate+  where+  hashWithSalt+    _salt+    InputProcessingConfigurationUpdate' {..} =+      _salt+        `Prelude.hashWithSalt` inputLambdaProcessorUpdate++instance+  Prelude.NFData+    InputProcessingConfigurationUpdate+  where+  rnf InputProcessingConfigurationUpdate' {..} =+    Prelude.rnf inputLambdaProcessorUpdate++instance+  Data.ToJSON+    InputProcessingConfigurationUpdate+  where+  toJSON InputProcessingConfigurationUpdate' {..} =+    Data.object+      ( Prelude.catMaybes+          [ Prelude.Just+              ( "InputLambdaProcessorUpdate"+                  Data..= inputLambdaProcessorUpdate+              )+          ]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/InputSchemaUpdate.hs view
@@ -0,0 +1,111 @@+{-# 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.KinesisAnalyticsV2.Types.InputSchemaUpdate+-- 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.KinesisAnalyticsV2.Types.InputSchemaUpdate where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types.RecordColumn+import Amazonka.KinesisAnalyticsV2.Types.RecordFormat+import qualified Amazonka.Prelude as Prelude++-- | Describes updates for an SQL-based Kinesis Data Analytics application\'s+-- input schema.+--+-- /See:/ 'newInputSchemaUpdate' smart constructor.+data InputSchemaUpdate = InputSchemaUpdate'+  { -- | A list of @RecordColumn@ objects. Each object describes the mapping of+    -- the streaming source element to the corresponding column in the+    -- in-application stream.+    recordColumnUpdates :: Prelude.Maybe (Prelude.NonEmpty RecordColumn),+    -- | Specifies the encoding of the records in the streaming source; for+    -- example, UTF-8.+    recordEncodingUpdate :: Prelude.Maybe Prelude.Text,+    -- | Specifies the format of the records on the streaming source.+    recordFormatUpdate :: Prelude.Maybe RecordFormat+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'InputSchemaUpdate' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'recordColumnUpdates', 'inputSchemaUpdate_recordColumnUpdates' - A list of @RecordColumn@ objects. Each object describes the mapping of+-- the streaming source element to the corresponding column in the+-- in-application stream.+--+-- 'recordEncodingUpdate', 'inputSchemaUpdate_recordEncodingUpdate' - Specifies the encoding of the records in the streaming source; for+-- example, UTF-8.+--+-- 'recordFormatUpdate', 'inputSchemaUpdate_recordFormatUpdate' - Specifies the format of the records on the streaming source.+newInputSchemaUpdate ::+  InputSchemaUpdate+newInputSchemaUpdate =+  InputSchemaUpdate'+    { recordColumnUpdates =+        Prelude.Nothing,+      recordEncodingUpdate = Prelude.Nothing,+      recordFormatUpdate = Prelude.Nothing+    }++-- | A list of @RecordColumn@ objects. Each object describes the mapping of+-- the streaming source element to the corresponding column in the+-- in-application stream.+inputSchemaUpdate_recordColumnUpdates :: Lens.Lens' InputSchemaUpdate (Prelude.Maybe (Prelude.NonEmpty RecordColumn))+inputSchemaUpdate_recordColumnUpdates = Lens.lens (\InputSchemaUpdate' {recordColumnUpdates} -> recordColumnUpdates) (\s@InputSchemaUpdate' {} a -> s {recordColumnUpdates = a} :: InputSchemaUpdate) Prelude.. Lens.mapping Lens.coerced++-- | Specifies the encoding of the records in the streaming source; for+-- example, UTF-8.+inputSchemaUpdate_recordEncodingUpdate :: Lens.Lens' InputSchemaUpdate (Prelude.Maybe Prelude.Text)+inputSchemaUpdate_recordEncodingUpdate = Lens.lens (\InputSchemaUpdate' {recordEncodingUpdate} -> recordEncodingUpdate) (\s@InputSchemaUpdate' {} a -> s {recordEncodingUpdate = a} :: InputSchemaUpdate)++-- | Specifies the format of the records on the streaming source.+inputSchemaUpdate_recordFormatUpdate :: Lens.Lens' InputSchemaUpdate (Prelude.Maybe RecordFormat)+inputSchemaUpdate_recordFormatUpdate = Lens.lens (\InputSchemaUpdate' {recordFormatUpdate} -> recordFormatUpdate) (\s@InputSchemaUpdate' {} a -> s {recordFormatUpdate = a} :: InputSchemaUpdate)++instance Prelude.Hashable InputSchemaUpdate where+  hashWithSalt _salt InputSchemaUpdate' {..} =+    _salt+      `Prelude.hashWithSalt` recordColumnUpdates+      `Prelude.hashWithSalt` recordEncodingUpdate+      `Prelude.hashWithSalt` recordFormatUpdate++instance Prelude.NFData InputSchemaUpdate where+  rnf InputSchemaUpdate' {..} =+    Prelude.rnf recordColumnUpdates+      `Prelude.seq` Prelude.rnf recordEncodingUpdate+      `Prelude.seq` Prelude.rnf recordFormatUpdate++instance Data.ToJSON InputSchemaUpdate where+  toJSON InputSchemaUpdate' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("RecordColumnUpdates" Data..=)+              Prelude.<$> recordColumnUpdates,+            ("RecordEncodingUpdate" Data..=)+              Prelude.<$> recordEncodingUpdate,+            ("RecordFormatUpdate" Data..=)+              Prelude.<$> recordFormatUpdate+          ]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/InputStartingPosition.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.KinesisAnalyticsV2.Types.InputStartingPosition+-- 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.KinesisAnalyticsV2.Types.InputStartingPosition+  ( InputStartingPosition+      ( ..,+        InputStartingPosition_LAST_STOPPED_POINT,+        InputStartingPosition_NOW,+        InputStartingPosition_TRIM_HORIZON+      ),+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype InputStartingPosition = InputStartingPosition'+  { fromInputStartingPosition ::+      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 InputStartingPosition_LAST_STOPPED_POINT :: InputStartingPosition+pattern InputStartingPosition_LAST_STOPPED_POINT = InputStartingPosition' "LAST_STOPPED_POINT"++pattern InputStartingPosition_NOW :: InputStartingPosition+pattern InputStartingPosition_NOW = InputStartingPosition' "NOW"++pattern InputStartingPosition_TRIM_HORIZON :: InputStartingPosition+pattern InputStartingPosition_TRIM_HORIZON = InputStartingPosition' "TRIM_HORIZON"++{-# COMPLETE+  InputStartingPosition_LAST_STOPPED_POINT,+  InputStartingPosition_NOW,+  InputStartingPosition_TRIM_HORIZON,+  InputStartingPosition'+  #-}
+ gen/Amazonka/KinesisAnalyticsV2/Types/InputStartingPositionConfiguration.hs view
@@ -0,0 +1,130 @@+{-# 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.KinesisAnalyticsV2.Types.InputStartingPositionConfiguration+-- 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.KinesisAnalyticsV2.Types.InputStartingPositionConfiguration where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types.InputStartingPosition+import qualified Amazonka.Prelude as Prelude++-- | Describes the point at which the application reads from the streaming+-- source.+--+-- /See:/ 'newInputStartingPositionConfiguration' smart constructor.+data InputStartingPositionConfiguration = InputStartingPositionConfiguration'+  { -- | The starting position on the stream.+    --+    -- -   @NOW@ - Start reading just after the most recent record in the+    --     stream, and start at the request timestamp that the customer issued.+    --+    -- -   @TRIM_HORIZON@ - Start reading at the last untrimmed record in the+    --     stream, which is the oldest record available in the stream. This+    --     option is not available for an Amazon Kinesis Data Firehose delivery+    --     stream.+    --+    -- -   @LAST_STOPPED_POINT@ - Resume reading from where the application+    --     last stopped reading.+    inputStartingPosition :: Prelude.Maybe InputStartingPosition+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'InputStartingPositionConfiguration' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'inputStartingPosition', 'inputStartingPositionConfiguration_inputStartingPosition' - The starting position on the stream.+--+-- -   @NOW@ - Start reading just after the most recent record in the+--     stream, and start at the request timestamp that the customer issued.+--+-- -   @TRIM_HORIZON@ - Start reading at the last untrimmed record in the+--     stream, which is the oldest record available in the stream. This+--     option is not available for an Amazon Kinesis Data Firehose delivery+--     stream.+--+-- -   @LAST_STOPPED_POINT@ - Resume reading from where the application+--     last stopped reading.+newInputStartingPositionConfiguration ::+  InputStartingPositionConfiguration+newInputStartingPositionConfiguration =+  InputStartingPositionConfiguration'+    { inputStartingPosition =+        Prelude.Nothing+    }++-- | The starting position on the stream.+--+-- -   @NOW@ - Start reading just after the most recent record in the+--     stream, and start at the request timestamp that the customer issued.+--+-- -   @TRIM_HORIZON@ - Start reading at the last untrimmed record in the+--     stream, which is the oldest record available in the stream. This+--     option is not available for an Amazon Kinesis Data Firehose delivery+--     stream.+--+-- -   @LAST_STOPPED_POINT@ - Resume reading from where the application+--     last stopped reading.+inputStartingPositionConfiguration_inputStartingPosition :: Lens.Lens' InputStartingPositionConfiguration (Prelude.Maybe InputStartingPosition)+inputStartingPositionConfiguration_inputStartingPosition = Lens.lens (\InputStartingPositionConfiguration' {inputStartingPosition} -> inputStartingPosition) (\s@InputStartingPositionConfiguration' {} a -> s {inputStartingPosition = a} :: InputStartingPositionConfiguration)++instance+  Data.FromJSON+    InputStartingPositionConfiguration+  where+  parseJSON =+    Data.withObject+      "InputStartingPositionConfiguration"+      ( \x ->+          InputStartingPositionConfiguration'+            Prelude.<$> (x Data..:? "InputStartingPosition")+      )++instance+  Prelude.Hashable+    InputStartingPositionConfiguration+  where+  hashWithSalt+    _salt+    InputStartingPositionConfiguration' {..} =+      _salt `Prelude.hashWithSalt` inputStartingPosition++instance+  Prelude.NFData+    InputStartingPositionConfiguration+  where+  rnf InputStartingPositionConfiguration' {..} =+    Prelude.rnf inputStartingPosition++instance+  Data.ToJSON+    InputStartingPositionConfiguration+  where+  toJSON InputStartingPositionConfiguration' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("InputStartingPosition" Data..=)+              Prelude.<$> inputStartingPosition+          ]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/InputUpdate.hs view
@@ -0,0 +1,177 @@+{-# 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.KinesisAnalyticsV2.Types.InputUpdate+-- 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.KinesisAnalyticsV2.Types.InputUpdate where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types.InputParallelismUpdate+import Amazonka.KinesisAnalyticsV2.Types.InputProcessingConfigurationUpdate+import Amazonka.KinesisAnalyticsV2.Types.InputSchemaUpdate+import Amazonka.KinesisAnalyticsV2.Types.KinesisFirehoseInputUpdate+import Amazonka.KinesisAnalyticsV2.Types.KinesisStreamsInputUpdate+import qualified Amazonka.Prelude as Prelude++-- | For a SQL-based Kinesis Data Analytics application, describes updates to+-- a specific input configuration (identified by the @InputId@ of an+-- application).+--+-- /See:/ 'newInputUpdate' smart constructor.+data InputUpdate = InputUpdate'+  { -- | Describes the parallelism updates (the number of in-application streams+    -- Kinesis Data Analytics creates for the specific streaming source).+    inputParallelismUpdate :: Prelude.Maybe InputParallelismUpdate,+    -- | Describes updates to an InputProcessingConfiguration.+    inputProcessingConfigurationUpdate :: Prelude.Maybe InputProcessingConfigurationUpdate,+    -- | Describes the data format on the streaming source, and how record+    -- elements on the streaming source map to columns of the in-application+    -- stream that is created.+    inputSchemaUpdate :: Prelude.Maybe InputSchemaUpdate,+    -- | If a Kinesis Data Firehose delivery stream is the streaming source to be+    -- updated, provides an updated stream ARN.+    kinesisFirehoseInputUpdate :: Prelude.Maybe KinesisFirehoseInputUpdate,+    -- | If a Kinesis data stream is the streaming source to be updated, provides+    -- an updated stream Amazon Resource Name (ARN).+    kinesisStreamsInputUpdate :: Prelude.Maybe KinesisStreamsInputUpdate,+    -- | The name prefix for in-application streams that Kinesis Data Analytics+    -- creates for the specific streaming source.+    namePrefixUpdate :: Prelude.Maybe Prelude.Text,+    -- | The input ID of the application input to be updated.+    inputId :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'InputUpdate' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'inputParallelismUpdate', 'inputUpdate_inputParallelismUpdate' - Describes the parallelism updates (the number of in-application streams+-- Kinesis Data Analytics creates for the specific streaming source).+--+-- 'inputProcessingConfigurationUpdate', 'inputUpdate_inputProcessingConfigurationUpdate' - Describes updates to an InputProcessingConfiguration.+--+-- 'inputSchemaUpdate', 'inputUpdate_inputSchemaUpdate' - Describes the data format on the streaming source, and how record+-- elements on the streaming source map to columns of the in-application+-- stream that is created.+--+-- 'kinesisFirehoseInputUpdate', 'inputUpdate_kinesisFirehoseInputUpdate' - If a Kinesis Data Firehose delivery stream is the streaming source to be+-- updated, provides an updated stream ARN.+--+-- 'kinesisStreamsInputUpdate', 'inputUpdate_kinesisStreamsInputUpdate' - If a Kinesis data stream is the streaming source to be updated, provides+-- an updated stream Amazon Resource Name (ARN).+--+-- 'namePrefixUpdate', 'inputUpdate_namePrefixUpdate' - The name prefix for in-application streams that Kinesis Data Analytics+-- creates for the specific streaming source.+--+-- 'inputId', 'inputUpdate_inputId' - The input ID of the application input to be updated.+newInputUpdate ::+  -- | 'inputId'+  Prelude.Text ->+  InputUpdate+newInputUpdate pInputId_ =+  InputUpdate'+    { inputParallelismUpdate =+        Prelude.Nothing,+      inputProcessingConfigurationUpdate = Prelude.Nothing,+      inputSchemaUpdate = Prelude.Nothing,+      kinesisFirehoseInputUpdate = Prelude.Nothing,+      kinesisStreamsInputUpdate = Prelude.Nothing,+      namePrefixUpdate = Prelude.Nothing,+      inputId = pInputId_+    }++-- | Describes the parallelism updates (the number of in-application streams+-- Kinesis Data Analytics creates for the specific streaming source).+inputUpdate_inputParallelismUpdate :: Lens.Lens' InputUpdate (Prelude.Maybe InputParallelismUpdate)+inputUpdate_inputParallelismUpdate = Lens.lens (\InputUpdate' {inputParallelismUpdate} -> inputParallelismUpdate) (\s@InputUpdate' {} a -> s {inputParallelismUpdate = a} :: InputUpdate)++-- | Describes updates to an InputProcessingConfiguration.+inputUpdate_inputProcessingConfigurationUpdate :: Lens.Lens' InputUpdate (Prelude.Maybe InputProcessingConfigurationUpdate)+inputUpdate_inputProcessingConfigurationUpdate = Lens.lens (\InputUpdate' {inputProcessingConfigurationUpdate} -> inputProcessingConfigurationUpdate) (\s@InputUpdate' {} a -> s {inputProcessingConfigurationUpdate = a} :: InputUpdate)++-- | Describes the data format on the streaming source, and how record+-- elements on the streaming source map to columns of the in-application+-- stream that is created.+inputUpdate_inputSchemaUpdate :: Lens.Lens' InputUpdate (Prelude.Maybe InputSchemaUpdate)+inputUpdate_inputSchemaUpdate = Lens.lens (\InputUpdate' {inputSchemaUpdate} -> inputSchemaUpdate) (\s@InputUpdate' {} a -> s {inputSchemaUpdate = a} :: InputUpdate)++-- | If a Kinesis Data Firehose delivery stream is the streaming source to be+-- updated, provides an updated stream ARN.+inputUpdate_kinesisFirehoseInputUpdate :: Lens.Lens' InputUpdate (Prelude.Maybe KinesisFirehoseInputUpdate)+inputUpdate_kinesisFirehoseInputUpdate = Lens.lens (\InputUpdate' {kinesisFirehoseInputUpdate} -> kinesisFirehoseInputUpdate) (\s@InputUpdate' {} a -> s {kinesisFirehoseInputUpdate = a} :: InputUpdate)++-- | If a Kinesis data stream is the streaming source to be updated, provides+-- an updated stream Amazon Resource Name (ARN).+inputUpdate_kinesisStreamsInputUpdate :: Lens.Lens' InputUpdate (Prelude.Maybe KinesisStreamsInputUpdate)+inputUpdate_kinesisStreamsInputUpdate = Lens.lens (\InputUpdate' {kinesisStreamsInputUpdate} -> kinesisStreamsInputUpdate) (\s@InputUpdate' {} a -> s {kinesisStreamsInputUpdate = a} :: InputUpdate)++-- | The name prefix for in-application streams that Kinesis Data Analytics+-- creates for the specific streaming source.+inputUpdate_namePrefixUpdate :: Lens.Lens' InputUpdate (Prelude.Maybe Prelude.Text)+inputUpdate_namePrefixUpdate = Lens.lens (\InputUpdate' {namePrefixUpdate} -> namePrefixUpdate) (\s@InputUpdate' {} a -> s {namePrefixUpdate = a} :: InputUpdate)++-- | The input ID of the application input to be updated.+inputUpdate_inputId :: Lens.Lens' InputUpdate Prelude.Text+inputUpdate_inputId = Lens.lens (\InputUpdate' {inputId} -> inputId) (\s@InputUpdate' {} a -> s {inputId = a} :: InputUpdate)++instance Prelude.Hashable InputUpdate where+  hashWithSalt _salt InputUpdate' {..} =+    _salt+      `Prelude.hashWithSalt` inputParallelismUpdate+      `Prelude.hashWithSalt` inputProcessingConfigurationUpdate+      `Prelude.hashWithSalt` inputSchemaUpdate+      `Prelude.hashWithSalt` kinesisFirehoseInputUpdate+      `Prelude.hashWithSalt` kinesisStreamsInputUpdate+      `Prelude.hashWithSalt` namePrefixUpdate+      `Prelude.hashWithSalt` inputId++instance Prelude.NFData InputUpdate where+  rnf InputUpdate' {..} =+    Prelude.rnf inputParallelismUpdate+      `Prelude.seq` Prelude.rnf inputProcessingConfigurationUpdate+      `Prelude.seq` Prelude.rnf inputSchemaUpdate+      `Prelude.seq` Prelude.rnf kinesisFirehoseInputUpdate+      `Prelude.seq` Prelude.rnf kinesisStreamsInputUpdate+      `Prelude.seq` Prelude.rnf namePrefixUpdate+      `Prelude.seq` Prelude.rnf inputId++instance Data.ToJSON InputUpdate where+  toJSON InputUpdate' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("InputParallelismUpdate" Data..=)+              Prelude.<$> inputParallelismUpdate,+            ("InputProcessingConfigurationUpdate" Data..=)+              Prelude.<$> inputProcessingConfigurationUpdate,+            ("InputSchemaUpdate" Data..=)+              Prelude.<$> inputSchemaUpdate,+            ("KinesisFirehoseInputUpdate" Data..=)+              Prelude.<$> kinesisFirehoseInputUpdate,+            ("KinesisStreamsInputUpdate" Data..=)+              Prelude.<$> kinesisStreamsInputUpdate,+            ("NamePrefixUpdate" Data..=)+              Prelude.<$> namePrefixUpdate,+            Prelude.Just ("InputId" Data..= inputId)+          ]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/JSONMappingParameters.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.KinesisAnalyticsV2.Types.JSONMappingParameters+-- 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.KinesisAnalyticsV2.Types.JSONMappingParameters 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++-- | For a SQL-based Kinesis Data Analytics application, provides additional+-- mapping information when JSON is the record format on the streaming+-- source.+--+-- /See:/ 'newJSONMappingParameters' smart constructor.+data JSONMappingParameters = JSONMappingParameters'+  { -- | The path to the top-level parent that contains the records.+    recordRowPath :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'JSONMappingParameters' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'recordRowPath', 'jSONMappingParameters_recordRowPath' - The path to the top-level parent that contains the records.+newJSONMappingParameters ::+  -- | 'recordRowPath'+  Prelude.Text ->+  JSONMappingParameters+newJSONMappingParameters pRecordRowPath_ =+  JSONMappingParameters'+    { recordRowPath =+        pRecordRowPath_+    }++-- | The path to the top-level parent that contains the records.+jSONMappingParameters_recordRowPath :: Lens.Lens' JSONMappingParameters Prelude.Text+jSONMappingParameters_recordRowPath = Lens.lens (\JSONMappingParameters' {recordRowPath} -> recordRowPath) (\s@JSONMappingParameters' {} a -> s {recordRowPath = a} :: JSONMappingParameters)++instance Data.FromJSON JSONMappingParameters where+  parseJSON =+    Data.withObject+      "JSONMappingParameters"+      ( \x ->+          JSONMappingParameters'+            Prelude.<$> (x Data..: "RecordRowPath")+      )++instance Prelude.Hashable JSONMappingParameters where+  hashWithSalt _salt JSONMappingParameters' {..} =+    _salt `Prelude.hashWithSalt` recordRowPath++instance Prelude.NFData JSONMappingParameters where+  rnf JSONMappingParameters' {..} =+    Prelude.rnf recordRowPath++instance Data.ToJSON JSONMappingParameters where+  toJSON JSONMappingParameters' {..} =+    Data.object+      ( Prelude.catMaybes+          [ Prelude.Just+              ("RecordRowPath" Data..= recordRowPath)+          ]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/KinesisFirehoseInput.hs view
@@ -0,0 +1,71 @@+{-# 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.KinesisAnalyticsV2.Types.KinesisFirehoseInput+-- 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.KinesisAnalyticsV2.Types.KinesisFirehoseInput 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++-- | For a SQL-based Kinesis Data Analytics application, identifies a Kinesis+-- Data Firehose delivery stream as the streaming source. You provide the+-- delivery stream\'s Amazon Resource Name (ARN).+--+-- /See:/ 'newKinesisFirehoseInput' smart constructor.+data KinesisFirehoseInput = KinesisFirehoseInput'+  { -- | The Amazon Resource Name (ARN) of the delivery stream.+    resourceARN :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'KinesisFirehoseInput' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'kinesisFirehoseInput_resourceARN' - The Amazon Resource Name (ARN) of the delivery stream.+newKinesisFirehoseInput ::+  -- | 'resourceARN'+  Prelude.Text ->+  KinesisFirehoseInput+newKinesisFirehoseInput pResourceARN_ =+  KinesisFirehoseInput' {resourceARN = pResourceARN_}++-- | The Amazon Resource Name (ARN) of the delivery stream.+kinesisFirehoseInput_resourceARN :: Lens.Lens' KinesisFirehoseInput Prelude.Text+kinesisFirehoseInput_resourceARN = Lens.lens (\KinesisFirehoseInput' {resourceARN} -> resourceARN) (\s@KinesisFirehoseInput' {} a -> s {resourceARN = a} :: KinesisFirehoseInput)++instance Prelude.Hashable KinesisFirehoseInput where+  hashWithSalt _salt KinesisFirehoseInput' {..} =+    _salt `Prelude.hashWithSalt` resourceARN++instance Prelude.NFData KinesisFirehoseInput where+  rnf KinesisFirehoseInput' {..} =+    Prelude.rnf resourceARN++instance Data.ToJSON KinesisFirehoseInput where+  toJSON KinesisFirehoseInput' {..} =+    Data.object+      ( Prelude.catMaybes+          [Prelude.Just ("ResourceARN" Data..= resourceARN)]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/KinesisFirehoseInputDescription.hs view
@@ -0,0 +1,115 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.KinesisAnalyticsV2.Types.KinesisFirehoseInputDescription+-- 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.KinesisAnalyticsV2.Types.KinesisFirehoseInputDescription 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++-- | Describes the Amazon Kinesis Data Firehose delivery stream that is+-- configured as the streaming source in the application input+-- configuration.+--+-- /See:/ 'newKinesisFirehoseInputDescription' smart constructor.+data KinesisFirehoseInputDescription = KinesisFirehoseInputDescription'+  { -- | The ARN of the IAM role that Kinesis Data Analytics assumes to access+    -- the stream.+    --+    -- Provided for backward compatibility. Applications that are created with+    -- the current API version have an application-level service execution role+    -- rather than a resource-level role.+    roleARN :: Prelude.Maybe Prelude.Text,+    -- | The Amazon Resource Name (ARN) of the delivery stream.+    resourceARN :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'KinesisFirehoseInputDescription' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'roleARN', 'kinesisFirehoseInputDescription_roleARN' - The ARN of the IAM role that Kinesis Data Analytics assumes to access+-- the stream.+--+-- Provided for backward compatibility. Applications that are created with+-- the current API version have an application-level service execution role+-- rather than a resource-level role.+--+-- 'resourceARN', 'kinesisFirehoseInputDescription_resourceARN' - The Amazon Resource Name (ARN) of the delivery stream.+newKinesisFirehoseInputDescription ::+  -- | 'resourceARN'+  Prelude.Text ->+  KinesisFirehoseInputDescription+newKinesisFirehoseInputDescription pResourceARN_ =+  KinesisFirehoseInputDescription'+    { roleARN =+        Prelude.Nothing,+      resourceARN = pResourceARN_+    }++-- | The ARN of the IAM role that Kinesis Data Analytics assumes to access+-- the stream.+--+-- Provided for backward compatibility. Applications that are created with+-- the current API version have an application-level service execution role+-- rather than a resource-level role.+kinesisFirehoseInputDescription_roleARN :: Lens.Lens' KinesisFirehoseInputDescription (Prelude.Maybe Prelude.Text)+kinesisFirehoseInputDescription_roleARN = Lens.lens (\KinesisFirehoseInputDescription' {roleARN} -> roleARN) (\s@KinesisFirehoseInputDescription' {} a -> s {roleARN = a} :: KinesisFirehoseInputDescription)++-- | The Amazon Resource Name (ARN) of the delivery stream.+kinesisFirehoseInputDescription_resourceARN :: Lens.Lens' KinesisFirehoseInputDescription Prelude.Text+kinesisFirehoseInputDescription_resourceARN = Lens.lens (\KinesisFirehoseInputDescription' {resourceARN} -> resourceARN) (\s@KinesisFirehoseInputDescription' {} a -> s {resourceARN = a} :: KinesisFirehoseInputDescription)++instance+  Data.FromJSON+    KinesisFirehoseInputDescription+  where+  parseJSON =+    Data.withObject+      "KinesisFirehoseInputDescription"+      ( \x ->+          KinesisFirehoseInputDescription'+            Prelude.<$> (x Data..:? "RoleARN")+            Prelude.<*> (x Data..: "ResourceARN")+      )++instance+  Prelude.Hashable+    KinesisFirehoseInputDescription+  where+  hashWithSalt+    _salt+    KinesisFirehoseInputDescription' {..} =+      _salt+        `Prelude.hashWithSalt` roleARN+        `Prelude.hashWithSalt` resourceARN++instance+  Prelude.NFData+    KinesisFirehoseInputDescription+  where+  rnf KinesisFirehoseInputDescription' {..} =+    Prelude.rnf roleARN+      `Prelude.seq` Prelude.rnf resourceARN
+ gen/Amazonka/KinesisAnalyticsV2/Types/KinesisFirehoseInputUpdate.hs view
@@ -0,0 +1,76 @@+{-# 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.KinesisAnalyticsV2.Types.KinesisFirehoseInputUpdate+-- 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.KinesisAnalyticsV2.Types.KinesisFirehoseInputUpdate 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++-- | For a SQL-based Kinesis Data Analytics application, when updating+-- application input configuration, provides information about a Kinesis+-- Data Firehose delivery stream as the streaming source.+--+-- /See:/ 'newKinesisFirehoseInputUpdate' smart constructor.+data KinesisFirehoseInputUpdate = KinesisFirehoseInputUpdate'+  { -- | The Amazon Resource Name (ARN) of the input delivery stream to read.+    resourceARNUpdate :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'KinesisFirehoseInputUpdate' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'resourceARNUpdate', 'kinesisFirehoseInputUpdate_resourceARNUpdate' - The Amazon Resource Name (ARN) of the input delivery stream to read.+newKinesisFirehoseInputUpdate ::+  -- | 'resourceARNUpdate'+  Prelude.Text ->+  KinesisFirehoseInputUpdate+newKinesisFirehoseInputUpdate pResourceARNUpdate_ =+  KinesisFirehoseInputUpdate'+    { resourceARNUpdate =+        pResourceARNUpdate_+    }++-- | The Amazon Resource Name (ARN) of the input delivery stream to read.+kinesisFirehoseInputUpdate_resourceARNUpdate :: Lens.Lens' KinesisFirehoseInputUpdate Prelude.Text+kinesisFirehoseInputUpdate_resourceARNUpdate = Lens.lens (\KinesisFirehoseInputUpdate' {resourceARNUpdate} -> resourceARNUpdate) (\s@KinesisFirehoseInputUpdate' {} a -> s {resourceARNUpdate = a} :: KinesisFirehoseInputUpdate)++instance Prelude.Hashable KinesisFirehoseInputUpdate where+  hashWithSalt _salt KinesisFirehoseInputUpdate' {..} =+    _salt `Prelude.hashWithSalt` resourceARNUpdate++instance Prelude.NFData KinesisFirehoseInputUpdate where+  rnf KinesisFirehoseInputUpdate' {..} =+    Prelude.rnf resourceARNUpdate++instance Data.ToJSON KinesisFirehoseInputUpdate where+  toJSON KinesisFirehoseInputUpdate' {..} =+    Data.object+      ( Prelude.catMaybes+          [ Prelude.Just+              ("ResourceARNUpdate" Data..= resourceARNUpdate)+          ]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/KinesisFirehoseOutput.hs view
@@ -0,0 +1,72 @@+{-# 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.KinesisAnalyticsV2.Types.KinesisFirehoseOutput+-- 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.KinesisAnalyticsV2.Types.KinesisFirehoseOutput 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++-- | For a SQL-based Kinesis Data Analytics application, when configuring+-- application output, identifies a Kinesis Data Firehose delivery stream+-- as the destination. You provide the stream Amazon Resource Name (ARN) of+-- the delivery stream.+--+-- /See:/ 'newKinesisFirehoseOutput' smart constructor.+data KinesisFirehoseOutput = KinesisFirehoseOutput'+  { -- | The ARN of the destination delivery stream to write to.+    resourceARN :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'KinesisFirehoseOutput' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'kinesisFirehoseOutput_resourceARN' - The ARN of the destination delivery stream to write to.+newKinesisFirehoseOutput ::+  -- | 'resourceARN'+  Prelude.Text ->+  KinesisFirehoseOutput+newKinesisFirehoseOutput pResourceARN_ =+  KinesisFirehoseOutput' {resourceARN = pResourceARN_}++-- | The ARN of the destination delivery stream to write to.+kinesisFirehoseOutput_resourceARN :: Lens.Lens' KinesisFirehoseOutput Prelude.Text+kinesisFirehoseOutput_resourceARN = Lens.lens (\KinesisFirehoseOutput' {resourceARN} -> resourceARN) (\s@KinesisFirehoseOutput' {} a -> s {resourceARN = a} :: KinesisFirehoseOutput)++instance Prelude.Hashable KinesisFirehoseOutput where+  hashWithSalt _salt KinesisFirehoseOutput' {..} =+    _salt `Prelude.hashWithSalt` resourceARN++instance Prelude.NFData KinesisFirehoseOutput where+  rnf KinesisFirehoseOutput' {..} =+    Prelude.rnf resourceARN++instance Data.ToJSON KinesisFirehoseOutput where+  toJSON KinesisFirehoseOutput' {..} =+    Data.object+      ( Prelude.catMaybes+          [Prelude.Just ("ResourceARN" Data..= resourceARN)]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/KinesisFirehoseOutputDescription.hs view
@@ -0,0 +1,115 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.KinesisAnalyticsV2.Types.KinesisFirehoseOutputDescription+-- 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.KinesisAnalyticsV2.Types.KinesisFirehoseOutputDescription 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++-- | For a SQL-based Kinesis Data Analytics application\'s output, describes+-- the Kinesis Data Firehose delivery stream that is configured as its+-- destination.+--+-- /See:/ 'newKinesisFirehoseOutputDescription' smart constructor.+data KinesisFirehoseOutputDescription = KinesisFirehoseOutputDescription'+  { -- | The ARN of the IAM role that Kinesis Data Analytics can assume to access+    -- the stream.+    --+    -- Provided for backward compatibility. Applications that are created with+    -- the current API version have an application-level service execution role+    -- rather than a resource-level role.+    roleARN :: Prelude.Maybe Prelude.Text,+    -- | The Amazon Resource Name (ARN) of the delivery stream.+    resourceARN :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'KinesisFirehoseOutputDescription' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'roleARN', 'kinesisFirehoseOutputDescription_roleARN' - The ARN of the IAM role that Kinesis Data Analytics can assume to access+-- the stream.+--+-- Provided for backward compatibility. Applications that are created with+-- the current API version have an application-level service execution role+-- rather than a resource-level role.+--+-- 'resourceARN', 'kinesisFirehoseOutputDescription_resourceARN' - The Amazon Resource Name (ARN) of the delivery stream.+newKinesisFirehoseOutputDescription ::+  -- | 'resourceARN'+  Prelude.Text ->+  KinesisFirehoseOutputDescription+newKinesisFirehoseOutputDescription pResourceARN_ =+  KinesisFirehoseOutputDescription'+    { roleARN =+        Prelude.Nothing,+      resourceARN = pResourceARN_+    }++-- | The ARN of the IAM role that Kinesis Data Analytics can assume to access+-- the stream.+--+-- Provided for backward compatibility. Applications that are created with+-- the current API version have an application-level service execution role+-- rather than a resource-level role.+kinesisFirehoseOutputDescription_roleARN :: Lens.Lens' KinesisFirehoseOutputDescription (Prelude.Maybe Prelude.Text)+kinesisFirehoseOutputDescription_roleARN = Lens.lens (\KinesisFirehoseOutputDescription' {roleARN} -> roleARN) (\s@KinesisFirehoseOutputDescription' {} a -> s {roleARN = a} :: KinesisFirehoseOutputDescription)++-- | The Amazon Resource Name (ARN) of the delivery stream.+kinesisFirehoseOutputDescription_resourceARN :: Lens.Lens' KinesisFirehoseOutputDescription Prelude.Text+kinesisFirehoseOutputDescription_resourceARN = Lens.lens (\KinesisFirehoseOutputDescription' {resourceARN} -> resourceARN) (\s@KinesisFirehoseOutputDescription' {} a -> s {resourceARN = a} :: KinesisFirehoseOutputDescription)++instance+  Data.FromJSON+    KinesisFirehoseOutputDescription+  where+  parseJSON =+    Data.withObject+      "KinesisFirehoseOutputDescription"+      ( \x ->+          KinesisFirehoseOutputDescription'+            Prelude.<$> (x Data..:? "RoleARN")+            Prelude.<*> (x Data..: "ResourceARN")+      )++instance+  Prelude.Hashable+    KinesisFirehoseOutputDescription+  where+  hashWithSalt+    _salt+    KinesisFirehoseOutputDescription' {..} =+      _salt+        `Prelude.hashWithSalt` roleARN+        `Prelude.hashWithSalt` resourceARN++instance+  Prelude.NFData+    KinesisFirehoseOutputDescription+  where+  rnf KinesisFirehoseOutputDescription' {..} =+    Prelude.rnf roleARN+      `Prelude.seq` Prelude.rnf resourceARN
+ gen/Amazonka/KinesisAnalyticsV2/Types/KinesisFirehoseOutputUpdate.hs view
@@ -0,0 +1,77 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.KinesisAnalyticsV2.Types.KinesisFirehoseOutputUpdate+-- 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.KinesisAnalyticsV2.Types.KinesisFirehoseOutputUpdate 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++-- | For a SQL-based Kinesis Data Analytics application, when updating an+-- output configuration using the UpdateApplication operation, provides+-- information about a Kinesis Data Firehose delivery stream that is+-- configured as the destination.+--+-- /See:/ 'newKinesisFirehoseOutputUpdate' smart constructor.+data KinesisFirehoseOutputUpdate = KinesisFirehoseOutputUpdate'+  { -- | The Amazon Resource Name (ARN) of the delivery stream to write to.+    resourceARNUpdate :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'KinesisFirehoseOutputUpdate' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'resourceARNUpdate', 'kinesisFirehoseOutputUpdate_resourceARNUpdate' - The Amazon Resource Name (ARN) of the delivery stream to write to.+newKinesisFirehoseOutputUpdate ::+  -- | 'resourceARNUpdate'+  Prelude.Text ->+  KinesisFirehoseOutputUpdate+newKinesisFirehoseOutputUpdate pResourceARNUpdate_ =+  KinesisFirehoseOutputUpdate'+    { resourceARNUpdate =+        pResourceARNUpdate_+    }++-- | The Amazon Resource Name (ARN) of the delivery stream to write to.+kinesisFirehoseOutputUpdate_resourceARNUpdate :: Lens.Lens' KinesisFirehoseOutputUpdate Prelude.Text+kinesisFirehoseOutputUpdate_resourceARNUpdate = Lens.lens (\KinesisFirehoseOutputUpdate' {resourceARNUpdate} -> resourceARNUpdate) (\s@KinesisFirehoseOutputUpdate' {} a -> s {resourceARNUpdate = a} :: KinesisFirehoseOutputUpdate)++instance Prelude.Hashable KinesisFirehoseOutputUpdate where+  hashWithSalt _salt KinesisFirehoseOutputUpdate' {..} =+    _salt `Prelude.hashWithSalt` resourceARNUpdate++instance Prelude.NFData KinesisFirehoseOutputUpdate where+  rnf KinesisFirehoseOutputUpdate' {..} =+    Prelude.rnf resourceARNUpdate++instance Data.ToJSON KinesisFirehoseOutputUpdate where+  toJSON KinesisFirehoseOutputUpdate' {..} =+    Data.object+      ( Prelude.catMaybes+          [ Prelude.Just+              ("ResourceARNUpdate" Data..= resourceARNUpdate)+          ]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/KinesisStreamsInput.hs view
@@ -0,0 +1,70 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.KinesisAnalyticsV2.Types.KinesisStreamsInput+-- 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.KinesisAnalyticsV2.Types.KinesisStreamsInput 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++-- | Identifies a Kinesis data stream as the streaming source. You provide+-- the stream\'s Amazon Resource Name (ARN).+--+-- /See:/ 'newKinesisStreamsInput' smart constructor.+data KinesisStreamsInput = KinesisStreamsInput'+  { -- | The ARN of the input Kinesis data stream to read.+    resourceARN :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'KinesisStreamsInput' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'kinesisStreamsInput_resourceARN' - The ARN of the input Kinesis data stream to read.+newKinesisStreamsInput ::+  -- | 'resourceARN'+  Prelude.Text ->+  KinesisStreamsInput+newKinesisStreamsInput pResourceARN_ =+  KinesisStreamsInput' {resourceARN = pResourceARN_}++-- | The ARN of the input Kinesis data stream to read.+kinesisStreamsInput_resourceARN :: Lens.Lens' KinesisStreamsInput Prelude.Text+kinesisStreamsInput_resourceARN = Lens.lens (\KinesisStreamsInput' {resourceARN} -> resourceARN) (\s@KinesisStreamsInput' {} a -> s {resourceARN = a} :: KinesisStreamsInput)++instance Prelude.Hashable KinesisStreamsInput where+  hashWithSalt _salt KinesisStreamsInput' {..} =+    _salt `Prelude.hashWithSalt` resourceARN++instance Prelude.NFData KinesisStreamsInput where+  rnf KinesisStreamsInput' {..} =+    Prelude.rnf resourceARN++instance Data.ToJSON KinesisStreamsInput where+  toJSON KinesisStreamsInput' {..} =+    Data.object+      ( Prelude.catMaybes+          [Prelude.Just ("ResourceARN" Data..= resourceARN)]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/KinesisStreamsInputDescription.hs view
@@ -0,0 +1,112 @@+{-# 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.KinesisAnalyticsV2.Types.KinesisStreamsInputDescription+-- 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.KinesisAnalyticsV2.Types.KinesisStreamsInputDescription 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++-- | For a SQL-based Kinesis Data Analytics application, describes the+-- Kinesis data stream that is configured as the streaming source in the+-- application input configuration.+--+-- /See:/ 'newKinesisStreamsInputDescription' smart constructor.+data KinesisStreamsInputDescription = KinesisStreamsInputDescription'+  { -- | The ARN of the IAM role that Kinesis Data Analytics can assume to access+    -- the stream.+    --+    -- Provided for backward compatibility. Applications that are created with+    -- the current API version have an application-level service execution role+    -- rather than a resource-level role.+    roleARN :: Prelude.Maybe Prelude.Text,+    -- | The Amazon Resource Name (ARN) of the Kinesis data stream.+    resourceARN :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'KinesisStreamsInputDescription' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'roleARN', 'kinesisStreamsInputDescription_roleARN' - The ARN of the IAM role that Kinesis Data Analytics can assume to access+-- the stream.+--+-- Provided for backward compatibility. Applications that are created with+-- the current API version have an application-level service execution role+-- rather than a resource-level role.+--+-- 'resourceARN', 'kinesisStreamsInputDescription_resourceARN' - The Amazon Resource Name (ARN) of the Kinesis data stream.+newKinesisStreamsInputDescription ::+  -- | 'resourceARN'+  Prelude.Text ->+  KinesisStreamsInputDescription+newKinesisStreamsInputDescription pResourceARN_ =+  KinesisStreamsInputDescription'+    { roleARN =+        Prelude.Nothing,+      resourceARN = pResourceARN_+    }++-- | The ARN of the IAM role that Kinesis Data Analytics can assume to access+-- the stream.+--+-- Provided for backward compatibility. Applications that are created with+-- the current API version have an application-level service execution role+-- rather than a resource-level role.+kinesisStreamsInputDescription_roleARN :: Lens.Lens' KinesisStreamsInputDescription (Prelude.Maybe Prelude.Text)+kinesisStreamsInputDescription_roleARN = Lens.lens (\KinesisStreamsInputDescription' {roleARN} -> roleARN) (\s@KinesisStreamsInputDescription' {} a -> s {roleARN = a} :: KinesisStreamsInputDescription)++-- | The Amazon Resource Name (ARN) of the Kinesis data stream.+kinesisStreamsInputDescription_resourceARN :: Lens.Lens' KinesisStreamsInputDescription Prelude.Text+kinesisStreamsInputDescription_resourceARN = Lens.lens (\KinesisStreamsInputDescription' {resourceARN} -> resourceARN) (\s@KinesisStreamsInputDescription' {} a -> s {resourceARN = a} :: KinesisStreamsInputDescription)++instance Data.FromJSON KinesisStreamsInputDescription where+  parseJSON =+    Data.withObject+      "KinesisStreamsInputDescription"+      ( \x ->+          KinesisStreamsInputDescription'+            Prelude.<$> (x Data..:? "RoleARN")+            Prelude.<*> (x Data..: "ResourceARN")+      )++instance+  Prelude.Hashable+    KinesisStreamsInputDescription+  where+  hashWithSalt+    _salt+    KinesisStreamsInputDescription' {..} =+      _salt+        `Prelude.hashWithSalt` roleARN+        `Prelude.hashWithSalt` resourceARN++instance+  Prelude.NFData+    KinesisStreamsInputDescription+  where+  rnf KinesisStreamsInputDescription' {..} =+    Prelude.rnf roleARN+      `Prelude.seq` Prelude.rnf resourceARN
+ gen/Amazonka/KinesisAnalyticsV2/Types/KinesisStreamsInputUpdate.hs view
@@ -0,0 +1,76 @@+{-# 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.KinesisAnalyticsV2.Types.KinesisStreamsInputUpdate+-- 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.KinesisAnalyticsV2.Types.KinesisStreamsInputUpdate 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++-- | When you update the input configuration for a SQL-based Kinesis Data+-- Analytics application, provides information about a Kinesis stream as+-- the streaming source.+--+-- /See:/ 'newKinesisStreamsInputUpdate' smart constructor.+data KinesisStreamsInputUpdate = KinesisStreamsInputUpdate'+  { -- | The Amazon Resource Name (ARN) of the input Kinesis data stream to read.+    resourceARNUpdate :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'KinesisStreamsInputUpdate' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'resourceARNUpdate', 'kinesisStreamsInputUpdate_resourceARNUpdate' - The Amazon Resource Name (ARN) of the input Kinesis data stream to read.+newKinesisStreamsInputUpdate ::+  -- | 'resourceARNUpdate'+  Prelude.Text ->+  KinesisStreamsInputUpdate+newKinesisStreamsInputUpdate pResourceARNUpdate_ =+  KinesisStreamsInputUpdate'+    { resourceARNUpdate =+        pResourceARNUpdate_+    }++-- | The Amazon Resource Name (ARN) of the input Kinesis data stream to read.+kinesisStreamsInputUpdate_resourceARNUpdate :: Lens.Lens' KinesisStreamsInputUpdate Prelude.Text+kinesisStreamsInputUpdate_resourceARNUpdate = Lens.lens (\KinesisStreamsInputUpdate' {resourceARNUpdate} -> resourceARNUpdate) (\s@KinesisStreamsInputUpdate' {} a -> s {resourceARNUpdate = a} :: KinesisStreamsInputUpdate)++instance Prelude.Hashable KinesisStreamsInputUpdate where+  hashWithSalt _salt KinesisStreamsInputUpdate' {..} =+    _salt `Prelude.hashWithSalt` resourceARNUpdate++instance Prelude.NFData KinesisStreamsInputUpdate where+  rnf KinesisStreamsInputUpdate' {..} =+    Prelude.rnf resourceARNUpdate++instance Data.ToJSON KinesisStreamsInputUpdate where+  toJSON KinesisStreamsInputUpdate' {..} =+    Data.object+      ( Prelude.catMaybes+          [ Prelude.Just+              ("ResourceARNUpdate" Data..= resourceARNUpdate)+          ]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/KinesisStreamsOutput.hs view
@@ -0,0 +1,71 @@+{-# 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.KinesisAnalyticsV2.Types.KinesisStreamsOutput+-- 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.KinesisAnalyticsV2.Types.KinesisStreamsOutput 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++-- | When you configure a SQL-based Kinesis Data Analytics application\'s+-- output, identifies a Kinesis data stream as the destination. You provide+-- the stream Amazon Resource Name (ARN).+--+-- /See:/ 'newKinesisStreamsOutput' smart constructor.+data KinesisStreamsOutput = KinesisStreamsOutput'+  { -- | The ARN of the destination Kinesis data stream to write to.+    resourceARN :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'KinesisStreamsOutput' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'kinesisStreamsOutput_resourceARN' - The ARN of the destination Kinesis data stream to write to.+newKinesisStreamsOutput ::+  -- | 'resourceARN'+  Prelude.Text ->+  KinesisStreamsOutput+newKinesisStreamsOutput pResourceARN_ =+  KinesisStreamsOutput' {resourceARN = pResourceARN_}++-- | The ARN of the destination Kinesis data stream to write to.+kinesisStreamsOutput_resourceARN :: Lens.Lens' KinesisStreamsOutput Prelude.Text+kinesisStreamsOutput_resourceARN = Lens.lens (\KinesisStreamsOutput' {resourceARN} -> resourceARN) (\s@KinesisStreamsOutput' {} a -> s {resourceARN = a} :: KinesisStreamsOutput)++instance Prelude.Hashable KinesisStreamsOutput where+  hashWithSalt _salt KinesisStreamsOutput' {..} =+    _salt `Prelude.hashWithSalt` resourceARN++instance Prelude.NFData KinesisStreamsOutput where+  rnf KinesisStreamsOutput' {..} =+    Prelude.rnf resourceARN++instance Data.ToJSON KinesisStreamsOutput where+  toJSON KinesisStreamsOutput' {..} =+    Data.object+      ( Prelude.catMaybes+          [Prelude.Just ("ResourceARN" Data..= resourceARN)]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/KinesisStreamsOutputDescription.hs view
@@ -0,0 +1,114 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.KinesisAnalyticsV2.Types.KinesisStreamsOutputDescription+-- 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.KinesisAnalyticsV2.Types.KinesisStreamsOutputDescription 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++-- | For an SQL-based Kinesis Data Analytics application\'s output, describes+-- the Kinesis data stream that is configured as its destination.+--+-- /See:/ 'newKinesisStreamsOutputDescription' smart constructor.+data KinesisStreamsOutputDescription = KinesisStreamsOutputDescription'+  { -- | The ARN of the IAM role that Kinesis Data Analytics can assume to access+    -- the stream.+    --+    -- Provided for backward compatibility. Applications that are created with+    -- the current API version have an application-level service execution role+    -- rather than a resource-level role.+    roleARN :: Prelude.Maybe Prelude.Text,+    -- | The Amazon Resource Name (ARN) of the Kinesis data stream.+    resourceARN :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'KinesisStreamsOutputDescription' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'roleARN', 'kinesisStreamsOutputDescription_roleARN' - The ARN of the IAM role that Kinesis Data Analytics can assume to access+-- the stream.+--+-- Provided for backward compatibility. Applications that are created with+-- the current API version have an application-level service execution role+-- rather than a resource-level role.+--+-- 'resourceARN', 'kinesisStreamsOutputDescription_resourceARN' - The Amazon Resource Name (ARN) of the Kinesis data stream.+newKinesisStreamsOutputDescription ::+  -- | 'resourceARN'+  Prelude.Text ->+  KinesisStreamsOutputDescription+newKinesisStreamsOutputDescription pResourceARN_ =+  KinesisStreamsOutputDescription'+    { roleARN =+        Prelude.Nothing,+      resourceARN = pResourceARN_+    }++-- | The ARN of the IAM role that Kinesis Data Analytics can assume to access+-- the stream.+--+-- Provided for backward compatibility. Applications that are created with+-- the current API version have an application-level service execution role+-- rather than a resource-level role.+kinesisStreamsOutputDescription_roleARN :: Lens.Lens' KinesisStreamsOutputDescription (Prelude.Maybe Prelude.Text)+kinesisStreamsOutputDescription_roleARN = Lens.lens (\KinesisStreamsOutputDescription' {roleARN} -> roleARN) (\s@KinesisStreamsOutputDescription' {} a -> s {roleARN = a} :: KinesisStreamsOutputDescription)++-- | The Amazon Resource Name (ARN) of the Kinesis data stream.+kinesisStreamsOutputDescription_resourceARN :: Lens.Lens' KinesisStreamsOutputDescription Prelude.Text+kinesisStreamsOutputDescription_resourceARN = Lens.lens (\KinesisStreamsOutputDescription' {resourceARN} -> resourceARN) (\s@KinesisStreamsOutputDescription' {} a -> s {resourceARN = a} :: KinesisStreamsOutputDescription)++instance+  Data.FromJSON+    KinesisStreamsOutputDescription+  where+  parseJSON =+    Data.withObject+      "KinesisStreamsOutputDescription"+      ( \x ->+          KinesisStreamsOutputDescription'+            Prelude.<$> (x Data..:? "RoleARN")+            Prelude.<*> (x Data..: "ResourceARN")+      )++instance+  Prelude.Hashable+    KinesisStreamsOutputDescription+  where+  hashWithSalt+    _salt+    KinesisStreamsOutputDescription' {..} =+      _salt+        `Prelude.hashWithSalt` roleARN+        `Prelude.hashWithSalt` resourceARN++instance+  Prelude.NFData+    KinesisStreamsOutputDescription+  where+  rnf KinesisStreamsOutputDescription' {..} =+    Prelude.rnf roleARN+      `Prelude.seq` Prelude.rnf resourceARN
+ gen/Amazonka/KinesisAnalyticsV2/Types/KinesisStreamsOutputUpdate.hs view
@@ -0,0 +1,80 @@+{-# 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.KinesisAnalyticsV2.Types.KinesisStreamsOutputUpdate+-- 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.KinesisAnalyticsV2.Types.KinesisStreamsOutputUpdate 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++-- | When you update a SQL-based Kinesis Data Analytics application\'s output+-- configuration using the UpdateApplication operation, provides+-- information about a Kinesis data stream that is configured as the+-- destination.+--+-- /See:/ 'newKinesisStreamsOutputUpdate' smart constructor.+data KinesisStreamsOutputUpdate = KinesisStreamsOutputUpdate'+  { -- | The Amazon Resource Name (ARN) of the Kinesis data stream where you want+    -- to write the output.+    resourceARNUpdate :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'KinesisStreamsOutputUpdate' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'resourceARNUpdate', 'kinesisStreamsOutputUpdate_resourceARNUpdate' - The Amazon Resource Name (ARN) of the Kinesis data stream where you want+-- to write the output.+newKinesisStreamsOutputUpdate ::+  -- | 'resourceARNUpdate'+  Prelude.Text ->+  KinesisStreamsOutputUpdate+newKinesisStreamsOutputUpdate pResourceARNUpdate_ =+  KinesisStreamsOutputUpdate'+    { resourceARNUpdate =+        pResourceARNUpdate_+    }++-- | The Amazon Resource Name (ARN) of the Kinesis data stream where you want+-- to write the output.+kinesisStreamsOutputUpdate_resourceARNUpdate :: Lens.Lens' KinesisStreamsOutputUpdate Prelude.Text+kinesisStreamsOutputUpdate_resourceARNUpdate = Lens.lens (\KinesisStreamsOutputUpdate' {resourceARNUpdate} -> resourceARNUpdate) (\s@KinesisStreamsOutputUpdate' {} a -> s {resourceARNUpdate = a} :: KinesisStreamsOutputUpdate)++instance Prelude.Hashable KinesisStreamsOutputUpdate where+  hashWithSalt _salt KinesisStreamsOutputUpdate' {..} =+    _salt `Prelude.hashWithSalt` resourceARNUpdate++instance Prelude.NFData KinesisStreamsOutputUpdate where+  rnf KinesisStreamsOutputUpdate' {..} =+    Prelude.rnf resourceARNUpdate++instance Data.ToJSON KinesisStreamsOutputUpdate where+  toJSON KinesisStreamsOutputUpdate' {..} =+    Data.object+      ( Prelude.catMaybes+          [ Prelude.Just+              ("ResourceARNUpdate" Data..= resourceARNUpdate)+          ]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/LambdaOutput.hs view
@@ -0,0 +1,88 @@+{-# 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.KinesisAnalyticsV2.Types.LambdaOutput+-- 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.KinesisAnalyticsV2.Types.LambdaOutput 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++-- | When you configure a SQL-based Kinesis Data Analytics application\'s+-- output, identifies an Amazon Lambda function as the destination. You+-- provide the function Amazon Resource Name (ARN) of the Lambda function.+--+-- /See:/ 'newLambdaOutput' smart constructor.+data LambdaOutput = LambdaOutput'+  { -- | The Amazon Resource Name (ARN) of the destination Lambda function to+    -- write to.+    --+    -- To specify an earlier version of the Lambda function than the latest,+    -- include the Lambda function version in the Lambda function ARN. For more+    -- information about Lambda ARNs, see+    -- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#arn-syntax-lambda Example ARNs: Amazon Lambda>+    resourceARN :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'LambdaOutput' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'lambdaOutput_resourceARN' - The Amazon Resource Name (ARN) of the destination Lambda function to+-- write to.+--+-- To specify an earlier version of the Lambda function than the latest,+-- include the Lambda function version in the Lambda function ARN. For more+-- information about Lambda ARNs, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#arn-syntax-lambda Example ARNs: Amazon Lambda>+newLambdaOutput ::+  -- | 'resourceARN'+  Prelude.Text ->+  LambdaOutput+newLambdaOutput pResourceARN_ =+  LambdaOutput' {resourceARN = pResourceARN_}++-- | The Amazon Resource Name (ARN) of the destination Lambda function to+-- write to.+--+-- To specify an earlier version of the Lambda function than the latest,+-- include the Lambda function version in the Lambda function ARN. For more+-- information about Lambda ARNs, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#arn-syntax-lambda Example ARNs: Amazon Lambda>+lambdaOutput_resourceARN :: Lens.Lens' LambdaOutput Prelude.Text+lambdaOutput_resourceARN = Lens.lens (\LambdaOutput' {resourceARN} -> resourceARN) (\s@LambdaOutput' {} a -> s {resourceARN = a} :: LambdaOutput)++instance Prelude.Hashable LambdaOutput where+  hashWithSalt _salt LambdaOutput' {..} =+    _salt `Prelude.hashWithSalt` resourceARN++instance Prelude.NFData LambdaOutput where+  rnf LambdaOutput' {..} = Prelude.rnf resourceARN++instance Data.ToJSON LambdaOutput where+  toJSON LambdaOutput' {..} =+    Data.object+      ( Prelude.catMaybes+          [Prelude.Just ("ResourceARN" Data..= resourceARN)]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/LambdaOutputDescription.hs view
@@ -0,0 +1,102 @@+{-# 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.KinesisAnalyticsV2.Types.LambdaOutputDescription+-- 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.KinesisAnalyticsV2.Types.LambdaOutputDescription 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++-- | For a SQL-based Kinesis Data Analytics application\'s output, describes+-- the Amazon Lambda function that is configured as its destination.+--+-- /See:/ 'newLambdaOutputDescription' smart constructor.+data LambdaOutputDescription = LambdaOutputDescription'+  { -- | The ARN of the IAM role that Kinesis Data Analytics can assume to write+    -- to the destination function.+    --+    -- Provided for backward compatibility. Applications that are created with+    -- the current API version have an application-level service execution role+    -- rather than a resource-level role.+    roleARN :: Prelude.Maybe Prelude.Text,+    -- | The Amazon Resource Name (ARN) of the destination Lambda function.+    resourceARN :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'LambdaOutputDescription' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'roleARN', 'lambdaOutputDescription_roleARN' - The ARN of the IAM role that Kinesis Data Analytics can assume to write+-- to the destination function.+--+-- Provided for backward compatibility. Applications that are created with+-- the current API version have an application-level service execution role+-- rather than a resource-level role.+--+-- 'resourceARN', 'lambdaOutputDescription_resourceARN' - The Amazon Resource Name (ARN) of the destination Lambda function.+newLambdaOutputDescription ::+  -- | 'resourceARN'+  Prelude.Text ->+  LambdaOutputDescription+newLambdaOutputDescription pResourceARN_ =+  LambdaOutputDescription'+    { roleARN = Prelude.Nothing,+      resourceARN = pResourceARN_+    }++-- | The ARN of the IAM role that Kinesis Data Analytics can assume to write+-- to the destination function.+--+-- Provided for backward compatibility. Applications that are created with+-- the current API version have an application-level service execution role+-- rather than a resource-level role.+lambdaOutputDescription_roleARN :: Lens.Lens' LambdaOutputDescription (Prelude.Maybe Prelude.Text)+lambdaOutputDescription_roleARN = Lens.lens (\LambdaOutputDescription' {roleARN} -> roleARN) (\s@LambdaOutputDescription' {} a -> s {roleARN = a} :: LambdaOutputDescription)++-- | The Amazon Resource Name (ARN) of the destination Lambda function.+lambdaOutputDescription_resourceARN :: Lens.Lens' LambdaOutputDescription Prelude.Text+lambdaOutputDescription_resourceARN = Lens.lens (\LambdaOutputDescription' {resourceARN} -> resourceARN) (\s@LambdaOutputDescription' {} a -> s {resourceARN = a} :: LambdaOutputDescription)++instance Data.FromJSON LambdaOutputDescription where+  parseJSON =+    Data.withObject+      "LambdaOutputDescription"+      ( \x ->+          LambdaOutputDescription'+            Prelude.<$> (x Data..:? "RoleARN")+            Prelude.<*> (x Data..: "ResourceARN")+      )++instance Prelude.Hashable LambdaOutputDescription where+  hashWithSalt _salt LambdaOutputDescription' {..} =+    _salt+      `Prelude.hashWithSalt` roleARN+      `Prelude.hashWithSalt` resourceARN++instance Prelude.NFData LambdaOutputDescription where+  rnf LambdaOutputDescription' {..} =+    Prelude.rnf roleARN+      `Prelude.seq` Prelude.rnf resourceARN
+ gen/Amazonka/KinesisAnalyticsV2/Types/LambdaOutputUpdate.hs view
@@ -0,0 +1,95 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.KinesisAnalyticsV2.Types.LambdaOutputUpdate+-- 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.KinesisAnalyticsV2.Types.LambdaOutputUpdate 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++-- | When you update an SQL-based Kinesis Data Analytics application\'s+-- output configuration using the UpdateApplication operation, provides+-- information about an Amazon Lambda function that is configured as the+-- destination.+--+-- /See:/ 'newLambdaOutputUpdate' smart constructor.+data LambdaOutputUpdate = LambdaOutputUpdate'+  { -- | The Amazon Resource Name (ARN) of the destination Amazon Lambda+    -- function.+    --+    -- To specify an earlier version of the Lambda function than the latest,+    -- include the Lambda function version in the Lambda function ARN. For more+    -- information about Lambda ARNs, see+    -- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#arn-syntax-lambda Example ARNs: Amazon Lambda>+    resourceARNUpdate :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'LambdaOutputUpdate' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'resourceARNUpdate', 'lambdaOutputUpdate_resourceARNUpdate' - The Amazon Resource Name (ARN) of the destination Amazon Lambda+-- function.+--+-- To specify an earlier version of the Lambda function than the latest,+-- include the Lambda function version in the Lambda function ARN. For more+-- information about Lambda ARNs, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#arn-syntax-lambda Example ARNs: Amazon Lambda>+newLambdaOutputUpdate ::+  -- | 'resourceARNUpdate'+  Prelude.Text ->+  LambdaOutputUpdate+newLambdaOutputUpdate pResourceARNUpdate_ =+  LambdaOutputUpdate'+    { resourceARNUpdate =+        pResourceARNUpdate_+    }++-- | The Amazon Resource Name (ARN) of the destination Amazon Lambda+-- function.+--+-- To specify an earlier version of the Lambda function than the latest,+-- include the Lambda function version in the Lambda function ARN. For more+-- information about Lambda ARNs, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#arn-syntax-lambda Example ARNs: Amazon Lambda>+lambdaOutputUpdate_resourceARNUpdate :: Lens.Lens' LambdaOutputUpdate Prelude.Text+lambdaOutputUpdate_resourceARNUpdate = Lens.lens (\LambdaOutputUpdate' {resourceARNUpdate} -> resourceARNUpdate) (\s@LambdaOutputUpdate' {} a -> s {resourceARNUpdate = a} :: LambdaOutputUpdate)++instance Prelude.Hashable LambdaOutputUpdate where+  hashWithSalt _salt LambdaOutputUpdate' {..} =+    _salt `Prelude.hashWithSalt` resourceARNUpdate++instance Prelude.NFData LambdaOutputUpdate where+  rnf LambdaOutputUpdate' {..} =+    Prelude.rnf resourceARNUpdate++instance Data.ToJSON LambdaOutputUpdate where+  toJSON LambdaOutputUpdate' {..} =+    Data.object+      ( Prelude.catMaybes+          [ Prelude.Just+              ("ResourceARNUpdate" Data..= resourceARNUpdate)+          ]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/LogLevel.hs view
@@ -0,0 +1,81 @@+{-# 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.KinesisAnalyticsV2.Types.LogLevel+-- 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.KinesisAnalyticsV2.Types.LogLevel+  ( LogLevel+      ( ..,+        LogLevel_DEBUG,+        LogLevel_ERROR,+        LogLevel_INFO,+        LogLevel_WARN+      ),+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype LogLevel = LogLevel'+  { fromLogLevel ::+      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 LogLevel_DEBUG :: LogLevel+pattern LogLevel_DEBUG = LogLevel' "DEBUG"++pattern LogLevel_ERROR :: LogLevel+pattern LogLevel_ERROR = LogLevel' "ERROR"++pattern LogLevel_INFO :: LogLevel+pattern LogLevel_INFO = LogLevel' "INFO"++pattern LogLevel_WARN :: LogLevel+pattern LogLevel_WARN = LogLevel' "WARN"++{-# COMPLETE+  LogLevel_DEBUG,+  LogLevel_ERROR,+  LogLevel_INFO,+  LogLevel_WARN,+  LogLevel'+  #-}
+ gen/Amazonka/KinesisAnalyticsV2/Types/MappingParameters.hs view
@@ -0,0 +1,108 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.KinesisAnalyticsV2.Types.MappingParameters+-- 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.KinesisAnalyticsV2.Types.MappingParameters where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types.CSVMappingParameters+import Amazonka.KinesisAnalyticsV2.Types.JSONMappingParameters+import qualified Amazonka.Prelude as Prelude++-- | When you configure a SQL-based Kinesis Data Analytics application\'s+-- input at the time of creating or updating an application, provides+-- additional mapping information specific to the record format (such as+-- JSON, CSV, or record fields delimited by some delimiter) on the+-- streaming source.+--+-- /See:/ 'newMappingParameters' smart constructor.+data MappingParameters = MappingParameters'+  { -- | Provides additional mapping information when the record format uses+    -- delimiters (for example, CSV).+    cSVMappingParameters :: Prelude.Maybe CSVMappingParameters,+    -- | Provides additional mapping information when JSON is the record format+    -- on the streaming source.+    jSONMappingParameters :: Prelude.Maybe JSONMappingParameters+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'MappingParameters' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'cSVMappingParameters', 'mappingParameters_cSVMappingParameters' - Provides additional mapping information when the record format uses+-- delimiters (for example, CSV).+--+-- 'jSONMappingParameters', 'mappingParameters_jSONMappingParameters' - Provides additional mapping information when JSON is the record format+-- on the streaming source.+newMappingParameters ::+  MappingParameters+newMappingParameters =+  MappingParameters'+    { cSVMappingParameters =+        Prelude.Nothing,+      jSONMappingParameters = Prelude.Nothing+    }++-- | Provides additional mapping information when the record format uses+-- delimiters (for example, CSV).+mappingParameters_cSVMappingParameters :: Lens.Lens' MappingParameters (Prelude.Maybe CSVMappingParameters)+mappingParameters_cSVMappingParameters = Lens.lens (\MappingParameters' {cSVMappingParameters} -> cSVMappingParameters) (\s@MappingParameters' {} a -> s {cSVMappingParameters = a} :: MappingParameters)++-- | Provides additional mapping information when JSON is the record format+-- on the streaming source.+mappingParameters_jSONMappingParameters :: Lens.Lens' MappingParameters (Prelude.Maybe JSONMappingParameters)+mappingParameters_jSONMappingParameters = Lens.lens (\MappingParameters' {jSONMappingParameters} -> jSONMappingParameters) (\s@MappingParameters' {} a -> s {jSONMappingParameters = a} :: MappingParameters)++instance Data.FromJSON MappingParameters where+  parseJSON =+    Data.withObject+      "MappingParameters"+      ( \x ->+          MappingParameters'+            Prelude.<$> (x Data..:? "CSVMappingParameters")+            Prelude.<*> (x Data..:? "JSONMappingParameters")+      )++instance Prelude.Hashable MappingParameters where+  hashWithSalt _salt MappingParameters' {..} =+    _salt+      `Prelude.hashWithSalt` cSVMappingParameters+      `Prelude.hashWithSalt` jSONMappingParameters++instance Prelude.NFData MappingParameters where+  rnf MappingParameters' {..} =+    Prelude.rnf cSVMappingParameters+      `Prelude.seq` Prelude.rnf jSONMappingParameters++instance Data.ToJSON MappingParameters where+  toJSON MappingParameters' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("CSVMappingParameters" Data..=)+              Prelude.<$> cSVMappingParameters,+            ("JSONMappingParameters" Data..=)+              Prelude.<$> jSONMappingParameters+          ]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/MavenReference.hs view
@@ -0,0 +1,113 @@+{-# 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.KinesisAnalyticsV2.Types.MavenReference+-- 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.KinesisAnalyticsV2.Types.MavenReference 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 required to specify a Maven reference. You can use Maven+-- references to specify dependency JAR files.+--+-- /See:/ 'newMavenReference' smart constructor.+data MavenReference = MavenReference'+  { -- | The group ID of the Maven reference.+    groupId :: Prelude.Text,+    -- | The artifact ID of the Maven reference.+    artifactId :: Prelude.Text,+    -- | The version of the Maven reference.+    version :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'MavenReference' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'groupId', 'mavenReference_groupId' - The group ID of the Maven reference.+--+-- 'artifactId', 'mavenReference_artifactId' - The artifact ID of the Maven reference.+--+-- 'version', 'mavenReference_version' - The version of the Maven reference.+newMavenReference ::+  -- | 'groupId'+  Prelude.Text ->+  -- | 'artifactId'+  Prelude.Text ->+  -- | 'version'+  Prelude.Text ->+  MavenReference+newMavenReference pGroupId_ pArtifactId_ pVersion_ =+  MavenReference'+    { groupId = pGroupId_,+      artifactId = pArtifactId_,+      version = pVersion_+    }++-- | The group ID of the Maven reference.+mavenReference_groupId :: Lens.Lens' MavenReference Prelude.Text+mavenReference_groupId = Lens.lens (\MavenReference' {groupId} -> groupId) (\s@MavenReference' {} a -> s {groupId = a} :: MavenReference)++-- | The artifact ID of the Maven reference.+mavenReference_artifactId :: Lens.Lens' MavenReference Prelude.Text+mavenReference_artifactId = Lens.lens (\MavenReference' {artifactId} -> artifactId) (\s@MavenReference' {} a -> s {artifactId = a} :: MavenReference)++-- | The version of the Maven reference.+mavenReference_version :: Lens.Lens' MavenReference Prelude.Text+mavenReference_version = Lens.lens (\MavenReference' {version} -> version) (\s@MavenReference' {} a -> s {version = a} :: MavenReference)++instance Data.FromJSON MavenReference where+  parseJSON =+    Data.withObject+      "MavenReference"+      ( \x ->+          MavenReference'+            Prelude.<$> (x Data..: "GroupId")+            Prelude.<*> (x Data..: "ArtifactId")+            Prelude.<*> (x Data..: "Version")+      )++instance Prelude.Hashable MavenReference where+  hashWithSalt _salt MavenReference' {..} =+    _salt+      `Prelude.hashWithSalt` groupId+      `Prelude.hashWithSalt` artifactId+      `Prelude.hashWithSalt` version++instance Prelude.NFData MavenReference where+  rnf MavenReference' {..} =+    Prelude.rnf groupId+      `Prelude.seq` Prelude.rnf artifactId+      `Prelude.seq` Prelude.rnf version++instance Data.ToJSON MavenReference where+  toJSON MavenReference' {..} =+    Data.object+      ( Prelude.catMaybes+          [ Prelude.Just ("GroupId" Data..= groupId),+            Prelude.Just ("ArtifactId" Data..= artifactId),+            Prelude.Just ("Version" Data..= version)+          ]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/MetricsLevel.hs view
@@ -0,0 +1,81 @@+{-# 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.KinesisAnalyticsV2.Types.MetricsLevel+-- 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.KinesisAnalyticsV2.Types.MetricsLevel+  ( MetricsLevel+      ( ..,+        MetricsLevel_APPLICATION,+        MetricsLevel_OPERATOR,+        MetricsLevel_PARALLELISM,+        MetricsLevel_TASK+      ),+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype MetricsLevel = MetricsLevel'+  { fromMetricsLevel ::+      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 MetricsLevel_APPLICATION :: MetricsLevel+pattern MetricsLevel_APPLICATION = MetricsLevel' "APPLICATION"++pattern MetricsLevel_OPERATOR :: MetricsLevel+pattern MetricsLevel_OPERATOR = MetricsLevel' "OPERATOR"++pattern MetricsLevel_PARALLELISM :: MetricsLevel+pattern MetricsLevel_PARALLELISM = MetricsLevel' "PARALLELISM"++pattern MetricsLevel_TASK :: MetricsLevel+pattern MetricsLevel_TASK = MetricsLevel' "TASK"++{-# COMPLETE+  MetricsLevel_APPLICATION,+  MetricsLevel_OPERATOR,+  MetricsLevel_PARALLELISM,+  MetricsLevel_TASK,+  MetricsLevel'+  #-}
+ gen/Amazonka/KinesisAnalyticsV2/Types/MonitoringConfiguration.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.KinesisAnalyticsV2.Types.MonitoringConfiguration+-- 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.KinesisAnalyticsV2.Types.MonitoringConfiguration where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types.ConfigurationType+import Amazonka.KinesisAnalyticsV2.Types.LogLevel+import Amazonka.KinesisAnalyticsV2.Types.MetricsLevel+import qualified Amazonka.Prelude as Prelude++-- | Describes configuration parameters for Amazon CloudWatch logging for an+-- application. For more information about CloudWatch logging, see+-- <https://docs.aws.amazon.com/kinesisanalytics/latest/java/monitoring-overview.html Monitoring>.+--+-- /See:/ 'newMonitoringConfiguration' smart constructor.+data MonitoringConfiguration = MonitoringConfiguration'+  { -- | Describes the verbosity of the CloudWatch Logs for an application.+    logLevel :: Prelude.Maybe LogLevel,+    -- | Describes the granularity of the CloudWatch Logs for an application. The+    -- @Parallelism@ level is not recommended for applications with a+    -- Parallelism over 64 due to excessive costs.+    metricsLevel :: Prelude.Maybe MetricsLevel,+    -- | Describes whether to use the default CloudWatch logging configuration+    -- for an application. You must set this property to @CUSTOM@ in order to+    -- set the @LogLevel@ or @MetricsLevel@ parameters.+    configurationType :: ConfigurationType+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'MonitoringConfiguration' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'logLevel', 'monitoringConfiguration_logLevel' - Describes the verbosity of the CloudWatch Logs for an application.+--+-- 'metricsLevel', 'monitoringConfiguration_metricsLevel' - Describes the granularity of the CloudWatch Logs for an application. The+-- @Parallelism@ level is not recommended for applications with a+-- Parallelism over 64 due to excessive costs.+--+-- 'configurationType', 'monitoringConfiguration_configurationType' - Describes whether to use the default CloudWatch logging configuration+-- for an application. You must set this property to @CUSTOM@ in order to+-- set the @LogLevel@ or @MetricsLevel@ parameters.+newMonitoringConfiguration ::+  -- | 'configurationType'+  ConfigurationType ->+  MonitoringConfiguration+newMonitoringConfiguration pConfigurationType_ =+  MonitoringConfiguration'+    { logLevel =+        Prelude.Nothing,+      metricsLevel = Prelude.Nothing,+      configurationType = pConfigurationType_+    }++-- | Describes the verbosity of the CloudWatch Logs for an application.+monitoringConfiguration_logLevel :: Lens.Lens' MonitoringConfiguration (Prelude.Maybe LogLevel)+monitoringConfiguration_logLevel = Lens.lens (\MonitoringConfiguration' {logLevel} -> logLevel) (\s@MonitoringConfiguration' {} a -> s {logLevel = a} :: MonitoringConfiguration)++-- | Describes the granularity of the CloudWatch Logs for an application. The+-- @Parallelism@ level is not recommended for applications with a+-- Parallelism over 64 due to excessive costs.+monitoringConfiguration_metricsLevel :: Lens.Lens' MonitoringConfiguration (Prelude.Maybe MetricsLevel)+monitoringConfiguration_metricsLevel = Lens.lens (\MonitoringConfiguration' {metricsLevel} -> metricsLevel) (\s@MonitoringConfiguration' {} a -> s {metricsLevel = a} :: MonitoringConfiguration)++-- | Describes whether to use the default CloudWatch logging configuration+-- for an application. You must set this property to @CUSTOM@ in order to+-- set the @LogLevel@ or @MetricsLevel@ parameters.+monitoringConfiguration_configurationType :: Lens.Lens' MonitoringConfiguration ConfigurationType+monitoringConfiguration_configurationType = Lens.lens (\MonitoringConfiguration' {configurationType} -> configurationType) (\s@MonitoringConfiguration' {} a -> s {configurationType = a} :: MonitoringConfiguration)++instance Prelude.Hashable MonitoringConfiguration where+  hashWithSalt _salt MonitoringConfiguration' {..} =+    _salt+      `Prelude.hashWithSalt` logLevel+      `Prelude.hashWithSalt` metricsLevel+      `Prelude.hashWithSalt` configurationType++instance Prelude.NFData MonitoringConfiguration where+  rnf MonitoringConfiguration' {..} =+    Prelude.rnf logLevel+      `Prelude.seq` Prelude.rnf metricsLevel+      `Prelude.seq` Prelude.rnf configurationType++instance Data.ToJSON MonitoringConfiguration where+  toJSON MonitoringConfiguration' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("LogLevel" Data..=) Prelude.<$> logLevel,+            ("MetricsLevel" Data..=) Prelude.<$> metricsLevel,+            Prelude.Just+              ("ConfigurationType" Data..= configurationType)+          ]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/MonitoringConfigurationDescription.hs view
@@ -0,0 +1,115 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.KinesisAnalyticsV2.Types.MonitoringConfigurationDescription+-- 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.KinesisAnalyticsV2.Types.MonitoringConfigurationDescription where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types.ConfigurationType+import Amazonka.KinesisAnalyticsV2.Types.LogLevel+import Amazonka.KinesisAnalyticsV2.Types.MetricsLevel+import qualified Amazonka.Prelude as Prelude++-- | Describes configuration parameters for CloudWatch logging for an+-- application.+--+-- /See:/ 'newMonitoringConfigurationDescription' smart constructor.+data MonitoringConfigurationDescription = MonitoringConfigurationDescription'+  { -- | Describes whether to use the default CloudWatch logging configuration+    -- for an application.+    configurationType :: Prelude.Maybe ConfigurationType,+    -- | Describes the verbosity of the CloudWatch Logs for an application.+    logLevel :: Prelude.Maybe LogLevel,+    -- | Describes the granularity of the CloudWatch Logs for an application.+    metricsLevel :: Prelude.Maybe MetricsLevel+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'MonitoringConfigurationDescription' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'configurationType', 'monitoringConfigurationDescription_configurationType' - Describes whether to use the default CloudWatch logging configuration+-- for an application.+--+-- 'logLevel', 'monitoringConfigurationDescription_logLevel' - Describes the verbosity of the CloudWatch Logs for an application.+--+-- 'metricsLevel', 'monitoringConfigurationDescription_metricsLevel' - Describes the granularity of the CloudWatch Logs for an application.+newMonitoringConfigurationDescription ::+  MonitoringConfigurationDescription+newMonitoringConfigurationDescription =+  MonitoringConfigurationDescription'+    { configurationType =+        Prelude.Nothing,+      logLevel = Prelude.Nothing,+      metricsLevel = Prelude.Nothing+    }++-- | Describes whether to use the default CloudWatch logging configuration+-- for an application.+monitoringConfigurationDescription_configurationType :: Lens.Lens' MonitoringConfigurationDescription (Prelude.Maybe ConfigurationType)+monitoringConfigurationDescription_configurationType = Lens.lens (\MonitoringConfigurationDescription' {configurationType} -> configurationType) (\s@MonitoringConfigurationDescription' {} a -> s {configurationType = a} :: MonitoringConfigurationDescription)++-- | Describes the verbosity of the CloudWatch Logs for an application.+monitoringConfigurationDescription_logLevel :: Lens.Lens' MonitoringConfigurationDescription (Prelude.Maybe LogLevel)+monitoringConfigurationDescription_logLevel = Lens.lens (\MonitoringConfigurationDescription' {logLevel} -> logLevel) (\s@MonitoringConfigurationDescription' {} a -> s {logLevel = a} :: MonitoringConfigurationDescription)++-- | Describes the granularity of the CloudWatch Logs for an application.+monitoringConfigurationDescription_metricsLevel :: Lens.Lens' MonitoringConfigurationDescription (Prelude.Maybe MetricsLevel)+monitoringConfigurationDescription_metricsLevel = Lens.lens (\MonitoringConfigurationDescription' {metricsLevel} -> metricsLevel) (\s@MonitoringConfigurationDescription' {} a -> s {metricsLevel = a} :: MonitoringConfigurationDescription)++instance+  Data.FromJSON+    MonitoringConfigurationDescription+  where+  parseJSON =+    Data.withObject+      "MonitoringConfigurationDescription"+      ( \x ->+          MonitoringConfigurationDescription'+            Prelude.<$> (x Data..:? "ConfigurationType")+            Prelude.<*> (x Data..:? "LogLevel")+            Prelude.<*> (x Data..:? "MetricsLevel")+      )++instance+  Prelude.Hashable+    MonitoringConfigurationDescription+  where+  hashWithSalt+    _salt+    MonitoringConfigurationDescription' {..} =+      _salt+        `Prelude.hashWithSalt` configurationType+        `Prelude.hashWithSalt` logLevel+        `Prelude.hashWithSalt` metricsLevel++instance+  Prelude.NFData+    MonitoringConfigurationDescription+  where+  rnf MonitoringConfigurationDescription' {..} =+    Prelude.rnf configurationType+      `Prelude.seq` Prelude.rnf logLevel+      `Prelude.seq` Prelude.rnf metricsLevel
+ gen/Amazonka/KinesisAnalyticsV2/Types/MonitoringConfigurationUpdate.hs view
@@ -0,0 +1,121 @@+{-# 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.KinesisAnalyticsV2.Types.MonitoringConfigurationUpdate+-- 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.KinesisAnalyticsV2.Types.MonitoringConfigurationUpdate where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types.ConfigurationType+import Amazonka.KinesisAnalyticsV2.Types.LogLevel+import Amazonka.KinesisAnalyticsV2.Types.MetricsLevel+import qualified Amazonka.Prelude as Prelude++-- | Describes updates to configuration parameters for Amazon CloudWatch+-- logging for an application.+--+-- /See:/ 'newMonitoringConfigurationUpdate' smart constructor.+data MonitoringConfigurationUpdate = MonitoringConfigurationUpdate'+  { -- | Describes updates to whether to use the default CloudWatch logging+    -- configuration for an application. You must set this property to @CUSTOM@+    -- in order to set the @LogLevel@ or @MetricsLevel@ parameters.+    configurationTypeUpdate :: Prelude.Maybe ConfigurationType,+    -- | Describes updates to the verbosity of the CloudWatch Logs for an+    -- application.+    logLevelUpdate :: Prelude.Maybe LogLevel,+    -- | Describes updates to the granularity of the CloudWatch Logs for an+    -- application. The @Parallelism@ level is not recommended for applications+    -- with a Parallelism over 64 due to excessive costs.+    metricsLevelUpdate :: Prelude.Maybe MetricsLevel+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'MonitoringConfigurationUpdate' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'configurationTypeUpdate', 'monitoringConfigurationUpdate_configurationTypeUpdate' - Describes updates to whether to use the default CloudWatch logging+-- configuration for an application. You must set this property to @CUSTOM@+-- in order to set the @LogLevel@ or @MetricsLevel@ parameters.+--+-- 'logLevelUpdate', 'monitoringConfigurationUpdate_logLevelUpdate' - Describes updates to the verbosity of the CloudWatch Logs for an+-- application.+--+-- 'metricsLevelUpdate', 'monitoringConfigurationUpdate_metricsLevelUpdate' - Describes updates to the granularity of the CloudWatch Logs for an+-- application. The @Parallelism@ level is not recommended for applications+-- with a Parallelism over 64 due to excessive costs.+newMonitoringConfigurationUpdate ::+  MonitoringConfigurationUpdate+newMonitoringConfigurationUpdate =+  MonitoringConfigurationUpdate'+    { configurationTypeUpdate =+        Prelude.Nothing,+      logLevelUpdate = Prelude.Nothing,+      metricsLevelUpdate = Prelude.Nothing+    }++-- | Describes updates to whether to use the default CloudWatch logging+-- configuration for an application. You must set this property to @CUSTOM@+-- in order to set the @LogLevel@ or @MetricsLevel@ parameters.+monitoringConfigurationUpdate_configurationTypeUpdate :: Lens.Lens' MonitoringConfigurationUpdate (Prelude.Maybe ConfigurationType)+monitoringConfigurationUpdate_configurationTypeUpdate = Lens.lens (\MonitoringConfigurationUpdate' {configurationTypeUpdate} -> configurationTypeUpdate) (\s@MonitoringConfigurationUpdate' {} a -> s {configurationTypeUpdate = a} :: MonitoringConfigurationUpdate)++-- | Describes updates to the verbosity of the CloudWatch Logs for an+-- application.+monitoringConfigurationUpdate_logLevelUpdate :: Lens.Lens' MonitoringConfigurationUpdate (Prelude.Maybe LogLevel)+monitoringConfigurationUpdate_logLevelUpdate = Lens.lens (\MonitoringConfigurationUpdate' {logLevelUpdate} -> logLevelUpdate) (\s@MonitoringConfigurationUpdate' {} a -> s {logLevelUpdate = a} :: MonitoringConfigurationUpdate)++-- | Describes updates to the granularity of the CloudWatch Logs for an+-- application. The @Parallelism@ level is not recommended for applications+-- with a Parallelism over 64 due to excessive costs.+monitoringConfigurationUpdate_metricsLevelUpdate :: Lens.Lens' MonitoringConfigurationUpdate (Prelude.Maybe MetricsLevel)+monitoringConfigurationUpdate_metricsLevelUpdate = Lens.lens (\MonitoringConfigurationUpdate' {metricsLevelUpdate} -> metricsLevelUpdate) (\s@MonitoringConfigurationUpdate' {} a -> s {metricsLevelUpdate = a} :: MonitoringConfigurationUpdate)++instance+  Prelude.Hashable+    MonitoringConfigurationUpdate+  where+  hashWithSalt _salt MonitoringConfigurationUpdate' {..} =+    _salt+      `Prelude.hashWithSalt` configurationTypeUpdate+      `Prelude.hashWithSalt` logLevelUpdate+      `Prelude.hashWithSalt` metricsLevelUpdate++instance Prelude.NFData MonitoringConfigurationUpdate where+  rnf MonitoringConfigurationUpdate' {..} =+    Prelude.rnf configurationTypeUpdate+      `Prelude.seq` Prelude.rnf logLevelUpdate+      `Prelude.seq` Prelude.rnf metricsLevelUpdate++instance Data.ToJSON MonitoringConfigurationUpdate where+  toJSON MonitoringConfigurationUpdate' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("ConfigurationTypeUpdate" Data..=)+              Prelude.<$> configurationTypeUpdate,+            ("LogLevelUpdate" Data..=)+              Prelude.<$> logLevelUpdate,+            ("MetricsLevelUpdate" Data..=)+              Prelude.<$> metricsLevelUpdate+          ]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/Output.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.KinesisAnalyticsV2.Types.Output+-- 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.KinesisAnalyticsV2.Types.Output where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types.DestinationSchema+import Amazonka.KinesisAnalyticsV2.Types.KinesisFirehoseOutput+import Amazonka.KinesisAnalyticsV2.Types.KinesisStreamsOutput+import Amazonka.KinesisAnalyticsV2.Types.LambdaOutput+import qualified Amazonka.Prelude as Prelude++-- | Describes a SQL-based Kinesis Data Analytics application\'s output+-- configuration, in which you identify an in-application stream and a+-- destination where you want the in-application stream data to be written.+-- The destination can be a Kinesis data stream or a Kinesis Data Firehose+-- delivery stream.+--+-- /See:/ 'newOutput' smart constructor.+data Output = Output'+  { -- | Identifies a Kinesis Data Firehose delivery stream as the destination.+    kinesisFirehoseOutput :: Prelude.Maybe KinesisFirehoseOutput,+    -- | Identifies a Kinesis data stream as the destination.+    kinesisStreamsOutput :: Prelude.Maybe KinesisStreamsOutput,+    -- | Identifies an Amazon Lambda function as the destination.+    lambdaOutput :: Prelude.Maybe LambdaOutput,+    -- | The name of the in-application stream.+    name :: Prelude.Text,+    -- | Describes the data format when records are written to the destination.+    destinationSchema :: DestinationSchema+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'Output' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'kinesisFirehoseOutput', 'output_kinesisFirehoseOutput' - Identifies a Kinesis Data Firehose delivery stream as the destination.+--+-- 'kinesisStreamsOutput', 'output_kinesisStreamsOutput' - Identifies a Kinesis data stream as the destination.+--+-- 'lambdaOutput', 'output_lambdaOutput' - Identifies an Amazon Lambda function as the destination.+--+-- 'name', 'output_name' - The name of the in-application stream.+--+-- 'destinationSchema', 'output_destinationSchema' - Describes the data format when records are written to the destination.+newOutput ::+  -- | 'name'+  Prelude.Text ->+  -- | 'destinationSchema'+  DestinationSchema ->+  Output+newOutput pName_ pDestinationSchema_ =+  Output'+    { kinesisFirehoseOutput = Prelude.Nothing,+      kinesisStreamsOutput = Prelude.Nothing,+      lambdaOutput = Prelude.Nothing,+      name = pName_,+      destinationSchema = pDestinationSchema_+    }++-- | Identifies a Kinesis Data Firehose delivery stream as the destination.+output_kinesisFirehoseOutput :: Lens.Lens' Output (Prelude.Maybe KinesisFirehoseOutput)+output_kinesisFirehoseOutput = Lens.lens (\Output' {kinesisFirehoseOutput} -> kinesisFirehoseOutput) (\s@Output' {} a -> s {kinesisFirehoseOutput = a} :: Output)++-- | Identifies a Kinesis data stream as the destination.+output_kinesisStreamsOutput :: Lens.Lens' Output (Prelude.Maybe KinesisStreamsOutput)+output_kinesisStreamsOutput = Lens.lens (\Output' {kinesisStreamsOutput} -> kinesisStreamsOutput) (\s@Output' {} a -> s {kinesisStreamsOutput = a} :: Output)++-- | Identifies an Amazon Lambda function as the destination.+output_lambdaOutput :: Lens.Lens' Output (Prelude.Maybe LambdaOutput)+output_lambdaOutput = Lens.lens (\Output' {lambdaOutput} -> lambdaOutput) (\s@Output' {} a -> s {lambdaOutput = a} :: Output)++-- | The name of the in-application stream.+output_name :: Lens.Lens' Output Prelude.Text+output_name = Lens.lens (\Output' {name} -> name) (\s@Output' {} a -> s {name = a} :: Output)++-- | Describes the data format when records are written to the destination.+output_destinationSchema :: Lens.Lens' Output DestinationSchema+output_destinationSchema = Lens.lens (\Output' {destinationSchema} -> destinationSchema) (\s@Output' {} a -> s {destinationSchema = a} :: Output)++instance Prelude.Hashable Output where+  hashWithSalt _salt Output' {..} =+    _salt+      `Prelude.hashWithSalt` kinesisFirehoseOutput+      `Prelude.hashWithSalt` kinesisStreamsOutput+      `Prelude.hashWithSalt` lambdaOutput+      `Prelude.hashWithSalt` name+      `Prelude.hashWithSalt` destinationSchema++instance Prelude.NFData Output where+  rnf Output' {..} =+    Prelude.rnf kinesisFirehoseOutput+      `Prelude.seq` Prelude.rnf kinesisStreamsOutput+      `Prelude.seq` Prelude.rnf lambdaOutput+      `Prelude.seq` Prelude.rnf name+      `Prelude.seq` Prelude.rnf destinationSchema++instance Data.ToJSON Output where+  toJSON Output' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("KinesisFirehoseOutput" Data..=)+              Prelude.<$> kinesisFirehoseOutput,+            ("KinesisStreamsOutput" Data..=)+              Prelude.<$> kinesisStreamsOutput,+            ("LambdaOutput" Data..=) Prelude.<$> lambdaOutput,+            Prelude.Just ("Name" Data..= name),+            Prelude.Just+              ("DestinationSchema" Data..= destinationSchema)+          ]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/OutputDescription.hs view
@@ -0,0 +1,150 @@+{-# 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.KinesisAnalyticsV2.Types.OutputDescription+-- 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.KinesisAnalyticsV2.Types.OutputDescription where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types.DestinationSchema+import Amazonka.KinesisAnalyticsV2.Types.KinesisFirehoseOutputDescription+import Amazonka.KinesisAnalyticsV2.Types.KinesisStreamsOutputDescription+import Amazonka.KinesisAnalyticsV2.Types.LambdaOutputDescription+import qualified Amazonka.Prelude as Prelude++-- | For a SQL-based Kinesis Data Analytics application, describes the+-- application output configuration, which includes the in-application+-- stream name and the destination where the stream data is written. The+-- destination can be a Kinesis data stream or a Kinesis Data Firehose+-- delivery stream.+--+-- /See:/ 'newOutputDescription' smart constructor.+data OutputDescription = OutputDescription'+  { -- | The data format used for writing data to the destination.+    destinationSchema :: Prelude.Maybe DestinationSchema,+    -- | Describes the Kinesis Data Firehose delivery stream that is configured+    -- as the destination where output is written.+    kinesisFirehoseOutputDescription :: Prelude.Maybe KinesisFirehoseOutputDescription,+    -- | Describes the Kinesis data stream that is configured as the destination+    -- where output is written.+    kinesisStreamsOutputDescription :: Prelude.Maybe KinesisStreamsOutputDescription,+    -- | Describes the Lambda function that is configured as the destination+    -- where output is written.+    lambdaOutputDescription :: Prelude.Maybe LambdaOutputDescription,+    -- | The name of the in-application stream that is configured as output.+    name :: Prelude.Maybe Prelude.Text,+    -- | A unique identifier for the output configuration.+    outputId :: Prelude.Maybe Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'OutputDescription' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'destinationSchema', 'outputDescription_destinationSchema' - The data format used for writing data to the destination.+--+-- 'kinesisFirehoseOutputDescription', 'outputDescription_kinesisFirehoseOutputDescription' - Describes the Kinesis Data Firehose delivery stream that is configured+-- as the destination where output is written.+--+-- 'kinesisStreamsOutputDescription', 'outputDescription_kinesisStreamsOutputDescription' - Describes the Kinesis data stream that is configured as the destination+-- where output is written.+--+-- 'lambdaOutputDescription', 'outputDescription_lambdaOutputDescription' - Describes the Lambda function that is configured as the destination+-- where output is written.+--+-- 'name', 'outputDescription_name' - The name of the in-application stream that is configured as output.+--+-- 'outputId', 'outputDescription_outputId' - A unique identifier for the output configuration.+newOutputDescription ::+  OutputDescription+newOutputDescription =+  OutputDescription'+    { destinationSchema =+        Prelude.Nothing,+      kinesisFirehoseOutputDescription = Prelude.Nothing,+      kinesisStreamsOutputDescription = Prelude.Nothing,+      lambdaOutputDescription = Prelude.Nothing,+      name = Prelude.Nothing,+      outputId = Prelude.Nothing+    }++-- | The data format used for writing data to the destination.+outputDescription_destinationSchema :: Lens.Lens' OutputDescription (Prelude.Maybe DestinationSchema)+outputDescription_destinationSchema = Lens.lens (\OutputDescription' {destinationSchema} -> destinationSchema) (\s@OutputDescription' {} a -> s {destinationSchema = a} :: OutputDescription)++-- | Describes the Kinesis Data Firehose delivery stream that is configured+-- as the destination where output is written.+outputDescription_kinesisFirehoseOutputDescription :: Lens.Lens' OutputDescription (Prelude.Maybe KinesisFirehoseOutputDescription)+outputDescription_kinesisFirehoseOutputDescription = Lens.lens (\OutputDescription' {kinesisFirehoseOutputDescription} -> kinesisFirehoseOutputDescription) (\s@OutputDescription' {} a -> s {kinesisFirehoseOutputDescription = a} :: OutputDescription)++-- | Describes the Kinesis data stream that is configured as the destination+-- where output is written.+outputDescription_kinesisStreamsOutputDescription :: Lens.Lens' OutputDescription (Prelude.Maybe KinesisStreamsOutputDescription)+outputDescription_kinesisStreamsOutputDescription = Lens.lens (\OutputDescription' {kinesisStreamsOutputDescription} -> kinesisStreamsOutputDescription) (\s@OutputDescription' {} a -> s {kinesisStreamsOutputDescription = a} :: OutputDescription)++-- | Describes the Lambda function that is configured as the destination+-- where output is written.+outputDescription_lambdaOutputDescription :: Lens.Lens' OutputDescription (Prelude.Maybe LambdaOutputDescription)+outputDescription_lambdaOutputDescription = Lens.lens (\OutputDescription' {lambdaOutputDescription} -> lambdaOutputDescription) (\s@OutputDescription' {} a -> s {lambdaOutputDescription = a} :: OutputDescription)++-- | The name of the in-application stream that is configured as output.+outputDescription_name :: Lens.Lens' OutputDescription (Prelude.Maybe Prelude.Text)+outputDescription_name = Lens.lens (\OutputDescription' {name} -> name) (\s@OutputDescription' {} a -> s {name = a} :: OutputDescription)++-- | A unique identifier for the output configuration.+outputDescription_outputId :: Lens.Lens' OutputDescription (Prelude.Maybe Prelude.Text)+outputDescription_outputId = Lens.lens (\OutputDescription' {outputId} -> outputId) (\s@OutputDescription' {} a -> s {outputId = a} :: OutputDescription)++instance Data.FromJSON OutputDescription where+  parseJSON =+    Data.withObject+      "OutputDescription"+      ( \x ->+          OutputDescription'+            Prelude.<$> (x Data..:? "DestinationSchema")+            Prelude.<*> (x Data..:? "KinesisFirehoseOutputDescription")+            Prelude.<*> (x Data..:? "KinesisStreamsOutputDescription")+            Prelude.<*> (x Data..:? "LambdaOutputDescription")+            Prelude.<*> (x Data..:? "Name")+            Prelude.<*> (x Data..:? "OutputId")+      )++instance Prelude.Hashable OutputDescription where+  hashWithSalt _salt OutputDescription' {..} =+    _salt+      `Prelude.hashWithSalt` destinationSchema+      `Prelude.hashWithSalt` kinesisFirehoseOutputDescription+      `Prelude.hashWithSalt` kinesisStreamsOutputDescription+      `Prelude.hashWithSalt` lambdaOutputDescription+      `Prelude.hashWithSalt` name+      `Prelude.hashWithSalt` outputId++instance Prelude.NFData OutputDescription where+  rnf OutputDescription' {..} =+    Prelude.rnf destinationSchema+      `Prelude.seq` Prelude.rnf kinesisFirehoseOutputDescription+      `Prelude.seq` Prelude.rnf kinesisStreamsOutputDescription+      `Prelude.seq` Prelude.rnf lambdaOutputDescription+      `Prelude.seq` Prelude.rnf name+      `Prelude.seq` Prelude.rnf outputId
+ gen/Amazonka/KinesisAnalyticsV2/Types/OutputUpdate.hs view
@@ -0,0 +1,152 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.KinesisAnalyticsV2.Types.OutputUpdate+-- 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.KinesisAnalyticsV2.Types.OutputUpdate where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types.DestinationSchema+import Amazonka.KinesisAnalyticsV2.Types.KinesisFirehoseOutputUpdate+import Amazonka.KinesisAnalyticsV2.Types.KinesisStreamsOutputUpdate+import Amazonka.KinesisAnalyticsV2.Types.LambdaOutputUpdate+import qualified Amazonka.Prelude as Prelude++-- | For a SQL-based Kinesis Data Analytics application, describes updates to+-- the output configuration identified by the @OutputId@.+--+-- /See:/ 'newOutputUpdate' smart constructor.+data OutputUpdate = OutputUpdate'+  { -- | Describes the data format when records are written to the destination.+    destinationSchemaUpdate :: Prelude.Maybe DestinationSchema,+    -- | Describes a Kinesis Data Firehose delivery stream as the destination for+    -- the output.+    kinesisFirehoseOutputUpdate :: Prelude.Maybe KinesisFirehoseOutputUpdate,+    -- | Describes a Kinesis data stream as the destination for the output.+    kinesisStreamsOutputUpdate :: Prelude.Maybe KinesisStreamsOutputUpdate,+    -- | Describes an Amazon Lambda function as the destination for the output.+    lambdaOutputUpdate :: Prelude.Maybe LambdaOutputUpdate,+    -- | If you want to specify a different in-application stream for this output+    -- configuration, use this field to specify the new in-application stream+    -- name.+    nameUpdate :: Prelude.Maybe Prelude.Text,+    -- | Identifies the specific output configuration that you want to update.+    outputId :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'OutputUpdate' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'destinationSchemaUpdate', 'outputUpdate_destinationSchemaUpdate' - Describes the data format when records are written to the destination.+--+-- 'kinesisFirehoseOutputUpdate', 'outputUpdate_kinesisFirehoseOutputUpdate' - Describes a Kinesis Data Firehose delivery stream as the destination for+-- the output.+--+-- 'kinesisStreamsOutputUpdate', 'outputUpdate_kinesisStreamsOutputUpdate' - Describes a Kinesis data stream as the destination for the output.+--+-- 'lambdaOutputUpdate', 'outputUpdate_lambdaOutputUpdate' - Describes an Amazon Lambda function as the destination for the output.+--+-- 'nameUpdate', 'outputUpdate_nameUpdate' - If you want to specify a different in-application stream for this output+-- configuration, use this field to specify the new in-application stream+-- name.+--+-- 'outputId', 'outputUpdate_outputId' - Identifies the specific output configuration that you want to update.+newOutputUpdate ::+  -- | 'outputId'+  Prelude.Text ->+  OutputUpdate+newOutputUpdate pOutputId_ =+  OutputUpdate'+    { destinationSchemaUpdate =+        Prelude.Nothing,+      kinesisFirehoseOutputUpdate = Prelude.Nothing,+      kinesisStreamsOutputUpdate = Prelude.Nothing,+      lambdaOutputUpdate = Prelude.Nothing,+      nameUpdate = Prelude.Nothing,+      outputId = pOutputId_+    }++-- | Describes the data format when records are written to the destination.+outputUpdate_destinationSchemaUpdate :: Lens.Lens' OutputUpdate (Prelude.Maybe DestinationSchema)+outputUpdate_destinationSchemaUpdate = Lens.lens (\OutputUpdate' {destinationSchemaUpdate} -> destinationSchemaUpdate) (\s@OutputUpdate' {} a -> s {destinationSchemaUpdate = a} :: OutputUpdate)++-- | Describes a Kinesis Data Firehose delivery stream as the destination for+-- the output.+outputUpdate_kinesisFirehoseOutputUpdate :: Lens.Lens' OutputUpdate (Prelude.Maybe KinesisFirehoseOutputUpdate)+outputUpdate_kinesisFirehoseOutputUpdate = Lens.lens (\OutputUpdate' {kinesisFirehoseOutputUpdate} -> kinesisFirehoseOutputUpdate) (\s@OutputUpdate' {} a -> s {kinesisFirehoseOutputUpdate = a} :: OutputUpdate)++-- | Describes a Kinesis data stream as the destination for the output.+outputUpdate_kinesisStreamsOutputUpdate :: Lens.Lens' OutputUpdate (Prelude.Maybe KinesisStreamsOutputUpdate)+outputUpdate_kinesisStreamsOutputUpdate = Lens.lens (\OutputUpdate' {kinesisStreamsOutputUpdate} -> kinesisStreamsOutputUpdate) (\s@OutputUpdate' {} a -> s {kinesisStreamsOutputUpdate = a} :: OutputUpdate)++-- | Describes an Amazon Lambda function as the destination for the output.+outputUpdate_lambdaOutputUpdate :: Lens.Lens' OutputUpdate (Prelude.Maybe LambdaOutputUpdate)+outputUpdate_lambdaOutputUpdate = Lens.lens (\OutputUpdate' {lambdaOutputUpdate} -> lambdaOutputUpdate) (\s@OutputUpdate' {} a -> s {lambdaOutputUpdate = a} :: OutputUpdate)++-- | If you want to specify a different in-application stream for this output+-- configuration, use this field to specify the new in-application stream+-- name.+outputUpdate_nameUpdate :: Lens.Lens' OutputUpdate (Prelude.Maybe Prelude.Text)+outputUpdate_nameUpdate = Lens.lens (\OutputUpdate' {nameUpdate} -> nameUpdate) (\s@OutputUpdate' {} a -> s {nameUpdate = a} :: OutputUpdate)++-- | Identifies the specific output configuration that you want to update.+outputUpdate_outputId :: Lens.Lens' OutputUpdate Prelude.Text+outputUpdate_outputId = Lens.lens (\OutputUpdate' {outputId} -> outputId) (\s@OutputUpdate' {} a -> s {outputId = a} :: OutputUpdate)++instance Prelude.Hashable OutputUpdate where+  hashWithSalt _salt OutputUpdate' {..} =+    _salt+      `Prelude.hashWithSalt` destinationSchemaUpdate+      `Prelude.hashWithSalt` kinesisFirehoseOutputUpdate+      `Prelude.hashWithSalt` kinesisStreamsOutputUpdate+      `Prelude.hashWithSalt` lambdaOutputUpdate+      `Prelude.hashWithSalt` nameUpdate+      `Prelude.hashWithSalt` outputId++instance Prelude.NFData OutputUpdate where+  rnf OutputUpdate' {..} =+    Prelude.rnf destinationSchemaUpdate+      `Prelude.seq` Prelude.rnf kinesisFirehoseOutputUpdate+      `Prelude.seq` Prelude.rnf kinesisStreamsOutputUpdate+      `Prelude.seq` Prelude.rnf lambdaOutputUpdate+      `Prelude.seq` Prelude.rnf nameUpdate+      `Prelude.seq` Prelude.rnf outputId++instance Data.ToJSON OutputUpdate where+  toJSON OutputUpdate' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("DestinationSchemaUpdate" Data..=)+              Prelude.<$> destinationSchemaUpdate,+            ("KinesisFirehoseOutputUpdate" Data..=)+              Prelude.<$> kinesisFirehoseOutputUpdate,+            ("KinesisStreamsOutputUpdate" Data..=)+              Prelude.<$> kinesisStreamsOutputUpdate,+            ("LambdaOutputUpdate" Data..=)+              Prelude.<$> lambdaOutputUpdate,+            ("NameUpdate" Data..=) Prelude.<$> nameUpdate,+            Prelude.Just ("OutputId" Data..= outputId)+          ]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/ParallelismConfiguration.hs view
@@ -0,0 +1,167 @@+{-# 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.KinesisAnalyticsV2.Types.ParallelismConfiguration+-- 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.KinesisAnalyticsV2.Types.ParallelismConfiguration where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types.ConfigurationType+import qualified Amazonka.Prelude as Prelude++-- | Describes parameters for how a Flink-based Kinesis Data Analytics+-- application executes multiple tasks simultaneously. For more information+-- about parallelism, see+-- <https://ci.apache.org/projects/flink/flink-docs-release-1.8/dev/parallel.html Parallel Execution>+-- in the+-- <https://ci.apache.org/projects/flink/flink-docs-release-1.8/ Apache Flink Documentation>.+--+-- /See:/ 'newParallelismConfiguration' smart constructor.+data ParallelismConfiguration = ParallelismConfiguration'+  { -- | Describes whether the Kinesis Data Analytics service can increase the+    -- parallelism of the application in response to increased throughput.+    autoScalingEnabled :: Prelude.Maybe Prelude.Bool,+    -- | Describes the initial number of parallel tasks that a Flink-based+    -- Kinesis Data Analytics application can perform. If @AutoScalingEnabled@+    -- is set to True, Kinesis Data Analytics increases the+    -- @CurrentParallelism@ value in response to application load. The service+    -- can increase the @CurrentParallelism@ value up to the maximum+    -- parallelism, which is @ParalellismPerKPU@ times the maximum KPUs for the+    -- application. The maximum KPUs for an application is 32 by default, and+    -- can be increased by requesting a limit increase. If application load is+    -- reduced, the service can reduce the @CurrentParallelism@ value down to+    -- the @Parallelism@ setting.+    parallelism :: Prelude.Maybe Prelude.Natural,+    -- | Describes the number of parallel tasks that a Flink-based Kinesis Data+    -- Analytics application can perform per Kinesis Processing Unit (KPU) used+    -- by the application. For more information about KPUs, see+    -- <http://aws.amazon.com/kinesis/data-analytics/pricing/ Amazon Kinesis Data Analytics Pricing>.+    parallelismPerKPU :: Prelude.Maybe Prelude.Natural,+    -- | Describes whether the application uses the default parallelism for the+    -- Kinesis Data Analytics service. You must set this property to @CUSTOM@+    -- in order to change your application\'s @AutoScalingEnabled@,+    -- @Parallelism@, or @ParallelismPerKPU@ properties.+    configurationType :: ConfigurationType+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ParallelismConfiguration' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'autoScalingEnabled', 'parallelismConfiguration_autoScalingEnabled' - Describes whether the Kinesis Data Analytics service can increase the+-- parallelism of the application in response to increased throughput.+--+-- 'parallelism', 'parallelismConfiguration_parallelism' - Describes the initial number of parallel tasks that a Flink-based+-- Kinesis Data Analytics application can perform. If @AutoScalingEnabled@+-- is set to True, Kinesis Data Analytics increases the+-- @CurrentParallelism@ value in response to application load. The service+-- can increase the @CurrentParallelism@ value up to the maximum+-- parallelism, which is @ParalellismPerKPU@ times the maximum KPUs for the+-- application. The maximum KPUs for an application is 32 by default, and+-- can be increased by requesting a limit increase. If application load is+-- reduced, the service can reduce the @CurrentParallelism@ value down to+-- the @Parallelism@ setting.+--+-- 'parallelismPerKPU', 'parallelismConfiguration_parallelismPerKPU' - Describes the number of parallel tasks that a Flink-based Kinesis Data+-- Analytics application can perform per Kinesis Processing Unit (KPU) used+-- by the application. For more information about KPUs, see+-- <http://aws.amazon.com/kinesis/data-analytics/pricing/ Amazon Kinesis Data Analytics Pricing>.+--+-- 'configurationType', 'parallelismConfiguration_configurationType' - Describes whether the application uses the default parallelism for the+-- Kinesis Data Analytics service. You must set this property to @CUSTOM@+-- in order to change your application\'s @AutoScalingEnabled@,+-- @Parallelism@, or @ParallelismPerKPU@ properties.+newParallelismConfiguration ::+  -- | 'configurationType'+  ConfigurationType ->+  ParallelismConfiguration+newParallelismConfiguration pConfigurationType_ =+  ParallelismConfiguration'+    { autoScalingEnabled =+        Prelude.Nothing,+      parallelism = Prelude.Nothing,+      parallelismPerKPU = Prelude.Nothing,+      configurationType = pConfigurationType_+    }++-- | Describes whether the Kinesis Data Analytics service can increase the+-- parallelism of the application in response to increased throughput.+parallelismConfiguration_autoScalingEnabled :: Lens.Lens' ParallelismConfiguration (Prelude.Maybe Prelude.Bool)+parallelismConfiguration_autoScalingEnabled = Lens.lens (\ParallelismConfiguration' {autoScalingEnabled} -> autoScalingEnabled) (\s@ParallelismConfiguration' {} a -> s {autoScalingEnabled = a} :: ParallelismConfiguration)++-- | Describes the initial number of parallel tasks that a Flink-based+-- Kinesis Data Analytics application can perform. If @AutoScalingEnabled@+-- is set to True, Kinesis Data Analytics increases the+-- @CurrentParallelism@ value in response to application load. The service+-- can increase the @CurrentParallelism@ value up to the maximum+-- parallelism, which is @ParalellismPerKPU@ times the maximum KPUs for the+-- application. The maximum KPUs for an application is 32 by default, and+-- can be increased by requesting a limit increase. If application load is+-- reduced, the service can reduce the @CurrentParallelism@ value down to+-- the @Parallelism@ setting.+parallelismConfiguration_parallelism :: Lens.Lens' ParallelismConfiguration (Prelude.Maybe Prelude.Natural)+parallelismConfiguration_parallelism = Lens.lens (\ParallelismConfiguration' {parallelism} -> parallelism) (\s@ParallelismConfiguration' {} a -> s {parallelism = a} :: ParallelismConfiguration)++-- | Describes the number of parallel tasks that a Flink-based Kinesis Data+-- Analytics application can perform per Kinesis Processing Unit (KPU) used+-- by the application. For more information about KPUs, see+-- <http://aws.amazon.com/kinesis/data-analytics/pricing/ Amazon Kinesis Data Analytics Pricing>.+parallelismConfiguration_parallelismPerKPU :: Lens.Lens' ParallelismConfiguration (Prelude.Maybe Prelude.Natural)+parallelismConfiguration_parallelismPerKPU = Lens.lens (\ParallelismConfiguration' {parallelismPerKPU} -> parallelismPerKPU) (\s@ParallelismConfiguration' {} a -> s {parallelismPerKPU = a} :: ParallelismConfiguration)++-- | Describes whether the application uses the default parallelism for the+-- Kinesis Data Analytics service. You must set this property to @CUSTOM@+-- in order to change your application\'s @AutoScalingEnabled@,+-- @Parallelism@, or @ParallelismPerKPU@ properties.+parallelismConfiguration_configurationType :: Lens.Lens' ParallelismConfiguration ConfigurationType+parallelismConfiguration_configurationType = Lens.lens (\ParallelismConfiguration' {configurationType} -> configurationType) (\s@ParallelismConfiguration' {} a -> s {configurationType = a} :: ParallelismConfiguration)++instance Prelude.Hashable ParallelismConfiguration where+  hashWithSalt _salt ParallelismConfiguration' {..} =+    _salt+      `Prelude.hashWithSalt` autoScalingEnabled+      `Prelude.hashWithSalt` parallelism+      `Prelude.hashWithSalt` parallelismPerKPU+      `Prelude.hashWithSalt` configurationType++instance Prelude.NFData ParallelismConfiguration where+  rnf ParallelismConfiguration' {..} =+    Prelude.rnf autoScalingEnabled+      `Prelude.seq` Prelude.rnf parallelism+      `Prelude.seq` Prelude.rnf parallelismPerKPU+      `Prelude.seq` Prelude.rnf configurationType++instance Data.ToJSON ParallelismConfiguration where+  toJSON ParallelismConfiguration' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("AutoScalingEnabled" Data..=)+              Prelude.<$> autoScalingEnabled,+            ("Parallelism" Data..=) Prelude.<$> parallelism,+            ("ParallelismPerKPU" Data..=)+              Prelude.<$> parallelismPerKPU,+            Prelude.Just+              ("ConfigurationType" Data..= configurationType)+          ]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/ParallelismConfigurationDescription.hs view
@@ -0,0 +1,197 @@+{-# 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.KinesisAnalyticsV2.Types.ParallelismConfigurationDescription+-- 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.KinesisAnalyticsV2.Types.ParallelismConfigurationDescription where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types.ConfigurationType+import qualified Amazonka.Prelude as Prelude++-- | Describes parameters for how a Flink-based Kinesis Data Analytics+-- application executes multiple tasks simultaneously.+--+-- /See:/ 'newParallelismConfigurationDescription' smart constructor.+data ParallelismConfigurationDescription = ParallelismConfigurationDescription'+  { -- | Describes whether the Kinesis Data Analytics service can increase the+    -- parallelism of the application in response to increased throughput.+    autoScalingEnabled :: Prelude.Maybe Prelude.Bool,+    -- | Describes whether the application uses the default parallelism for the+    -- Kinesis Data Analytics service.+    configurationType :: Prelude.Maybe ConfigurationType,+    -- | Describes the current number of parallel tasks that a Flink-based+    -- Kinesis Data Analytics application can perform. If @AutoScalingEnabled@+    -- is set to True, Kinesis Data Analytics can increase this value in+    -- response to application load. The service can increase this value up to+    -- the maximum parallelism, which is @ParalellismPerKPU@ times the maximum+    -- KPUs for the application. The maximum KPUs for an application is 32 by+    -- default, and can be increased by requesting a limit increase. If+    -- application load is reduced, the service can reduce the+    -- @CurrentParallelism@ value down to the @Parallelism@ setting.+    currentParallelism :: Prelude.Maybe Prelude.Natural,+    -- | Describes the initial number of parallel tasks that a Flink-based+    -- Kinesis Data Analytics application can perform. If @AutoScalingEnabled@+    -- is set to True, then Kinesis Data Analytics can increase the+    -- @CurrentParallelism@ value in response to application load. The service+    -- can increase @CurrentParallelism@ up to the maximum parallelism, which+    -- is @ParalellismPerKPU@ times the maximum KPUs for the application. The+    -- maximum KPUs for an application is 32 by default, and can be increased+    -- by requesting a limit increase. If application load is reduced, the+    -- service can reduce the @CurrentParallelism@ value down to the+    -- @Parallelism@ setting.+    parallelism :: Prelude.Maybe Prelude.Natural,+    -- | Describes the number of parallel tasks that a Flink-based Kinesis Data+    -- Analytics application can perform per Kinesis Processing Unit (KPU) used+    -- by the application.+    parallelismPerKPU :: Prelude.Maybe Prelude.Natural+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ParallelismConfigurationDescription' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'autoScalingEnabled', 'parallelismConfigurationDescription_autoScalingEnabled' - Describes whether the Kinesis Data Analytics service can increase the+-- parallelism of the application in response to increased throughput.+--+-- 'configurationType', 'parallelismConfigurationDescription_configurationType' - Describes whether the application uses the default parallelism for the+-- Kinesis Data Analytics service.+--+-- 'currentParallelism', 'parallelismConfigurationDescription_currentParallelism' - Describes the current number of parallel tasks that a Flink-based+-- Kinesis Data Analytics application can perform. If @AutoScalingEnabled@+-- is set to True, Kinesis Data Analytics can increase this value in+-- response to application load. The service can increase this value up to+-- the maximum parallelism, which is @ParalellismPerKPU@ times the maximum+-- KPUs for the application. The maximum KPUs for an application is 32 by+-- default, and can be increased by requesting a limit increase. If+-- application load is reduced, the service can reduce the+-- @CurrentParallelism@ value down to the @Parallelism@ setting.+--+-- 'parallelism', 'parallelismConfigurationDescription_parallelism' - Describes the initial number of parallel tasks that a Flink-based+-- Kinesis Data Analytics application can perform. If @AutoScalingEnabled@+-- is set to True, then Kinesis Data Analytics can increase the+-- @CurrentParallelism@ value in response to application load. The service+-- can increase @CurrentParallelism@ up to the maximum parallelism, which+-- is @ParalellismPerKPU@ times the maximum KPUs for the application. The+-- maximum KPUs for an application is 32 by default, and can be increased+-- by requesting a limit increase. If application load is reduced, the+-- service can reduce the @CurrentParallelism@ value down to the+-- @Parallelism@ setting.+--+-- 'parallelismPerKPU', 'parallelismConfigurationDescription_parallelismPerKPU' - Describes the number of parallel tasks that a Flink-based Kinesis Data+-- Analytics application can perform per Kinesis Processing Unit (KPU) used+-- by the application.+newParallelismConfigurationDescription ::+  ParallelismConfigurationDescription+newParallelismConfigurationDescription =+  ParallelismConfigurationDescription'+    { autoScalingEnabled =+        Prelude.Nothing,+      configurationType = Prelude.Nothing,+      currentParallelism = Prelude.Nothing,+      parallelism = Prelude.Nothing,+      parallelismPerKPU = Prelude.Nothing+    }++-- | Describes whether the Kinesis Data Analytics service can increase the+-- parallelism of the application in response to increased throughput.+parallelismConfigurationDescription_autoScalingEnabled :: Lens.Lens' ParallelismConfigurationDescription (Prelude.Maybe Prelude.Bool)+parallelismConfigurationDescription_autoScalingEnabled = Lens.lens (\ParallelismConfigurationDescription' {autoScalingEnabled} -> autoScalingEnabled) (\s@ParallelismConfigurationDescription' {} a -> s {autoScalingEnabled = a} :: ParallelismConfigurationDescription)++-- | Describes whether the application uses the default parallelism for the+-- Kinesis Data Analytics service.+parallelismConfigurationDescription_configurationType :: Lens.Lens' ParallelismConfigurationDescription (Prelude.Maybe ConfigurationType)+parallelismConfigurationDescription_configurationType = Lens.lens (\ParallelismConfigurationDescription' {configurationType} -> configurationType) (\s@ParallelismConfigurationDescription' {} a -> s {configurationType = a} :: ParallelismConfigurationDescription)++-- | Describes the current number of parallel tasks that a Flink-based+-- Kinesis Data Analytics application can perform. If @AutoScalingEnabled@+-- is set to True, Kinesis Data Analytics can increase this value in+-- response to application load. The service can increase this value up to+-- the maximum parallelism, which is @ParalellismPerKPU@ times the maximum+-- KPUs for the application. The maximum KPUs for an application is 32 by+-- default, and can be increased by requesting a limit increase. If+-- application load is reduced, the service can reduce the+-- @CurrentParallelism@ value down to the @Parallelism@ setting.+parallelismConfigurationDescription_currentParallelism :: Lens.Lens' ParallelismConfigurationDescription (Prelude.Maybe Prelude.Natural)+parallelismConfigurationDescription_currentParallelism = Lens.lens (\ParallelismConfigurationDescription' {currentParallelism} -> currentParallelism) (\s@ParallelismConfigurationDescription' {} a -> s {currentParallelism = a} :: ParallelismConfigurationDescription)++-- | Describes the initial number of parallel tasks that a Flink-based+-- Kinesis Data Analytics application can perform. If @AutoScalingEnabled@+-- is set to True, then Kinesis Data Analytics can increase the+-- @CurrentParallelism@ value in response to application load. The service+-- can increase @CurrentParallelism@ up to the maximum parallelism, which+-- is @ParalellismPerKPU@ times the maximum KPUs for the application. The+-- maximum KPUs for an application is 32 by default, and can be increased+-- by requesting a limit increase. If application load is reduced, the+-- service can reduce the @CurrentParallelism@ value down to the+-- @Parallelism@ setting.+parallelismConfigurationDescription_parallelism :: Lens.Lens' ParallelismConfigurationDescription (Prelude.Maybe Prelude.Natural)+parallelismConfigurationDescription_parallelism = Lens.lens (\ParallelismConfigurationDescription' {parallelism} -> parallelism) (\s@ParallelismConfigurationDescription' {} a -> s {parallelism = a} :: ParallelismConfigurationDescription)++-- | Describes the number of parallel tasks that a Flink-based Kinesis Data+-- Analytics application can perform per Kinesis Processing Unit (KPU) used+-- by the application.+parallelismConfigurationDescription_parallelismPerKPU :: Lens.Lens' ParallelismConfigurationDescription (Prelude.Maybe Prelude.Natural)+parallelismConfigurationDescription_parallelismPerKPU = Lens.lens (\ParallelismConfigurationDescription' {parallelismPerKPU} -> parallelismPerKPU) (\s@ParallelismConfigurationDescription' {} a -> s {parallelismPerKPU = a} :: ParallelismConfigurationDescription)++instance+  Data.FromJSON+    ParallelismConfigurationDescription+  where+  parseJSON =+    Data.withObject+      "ParallelismConfigurationDescription"+      ( \x ->+          ParallelismConfigurationDescription'+            Prelude.<$> (x Data..:? "AutoScalingEnabled")+            Prelude.<*> (x Data..:? "ConfigurationType")+            Prelude.<*> (x Data..:? "CurrentParallelism")+            Prelude.<*> (x Data..:? "Parallelism")+            Prelude.<*> (x Data..:? "ParallelismPerKPU")+      )++instance+  Prelude.Hashable+    ParallelismConfigurationDescription+  where+  hashWithSalt+    _salt+    ParallelismConfigurationDescription' {..} =+      _salt+        `Prelude.hashWithSalt` autoScalingEnabled+        `Prelude.hashWithSalt` configurationType+        `Prelude.hashWithSalt` currentParallelism+        `Prelude.hashWithSalt` parallelism+        `Prelude.hashWithSalt` parallelismPerKPU++instance+  Prelude.NFData+    ParallelismConfigurationDescription+  where+  rnf ParallelismConfigurationDescription' {..} =+    Prelude.rnf autoScalingEnabled+      `Prelude.seq` Prelude.rnf configurationType+      `Prelude.seq` Prelude.rnf currentParallelism+      `Prelude.seq` Prelude.rnf parallelism+      `Prelude.seq` Prelude.rnf parallelismPerKPU
+ gen/Amazonka/KinesisAnalyticsV2/Types/ParallelismConfigurationUpdate.hs view
@@ -0,0 +1,167 @@+{-# 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.KinesisAnalyticsV2.Types.ParallelismConfigurationUpdate+-- 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.KinesisAnalyticsV2.Types.ParallelismConfigurationUpdate where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types.ConfigurationType+import qualified Amazonka.Prelude as Prelude++-- | Describes updates to parameters for how an application executes multiple+-- tasks simultaneously.+--+-- /See:/ 'newParallelismConfigurationUpdate' smart constructor.+data ParallelismConfigurationUpdate = ParallelismConfigurationUpdate'+  { -- | Describes updates to whether the Kinesis Data Analytics service can+    -- increase the parallelism of a Flink-based Kinesis Data Analytics+    -- application in response to increased throughput.+    autoScalingEnabledUpdate :: Prelude.Maybe Prelude.Bool,+    -- | Describes updates to whether the application uses the default+    -- parallelism for the Kinesis Data Analytics service, or if a custom+    -- parallelism is used. You must set this property to @CUSTOM@ in order to+    -- change your application\'s @AutoScalingEnabled@, @Parallelism@, or+    -- @ParallelismPerKPU@ properties.+    configurationTypeUpdate :: Prelude.Maybe ConfigurationType,+    -- | Describes updates to the number of parallel tasks an application can+    -- perform per Kinesis Processing Unit (KPU) used by the application.+    parallelismPerKPUUpdate :: Prelude.Maybe Prelude.Natural,+    -- | Describes updates to the initial number of parallel tasks an application+    -- can perform. If @AutoScalingEnabled@ is set to True, then Kinesis Data+    -- Analytics can increase the @CurrentParallelism@ value in response to+    -- application load. The service can increase @CurrentParallelism@ up to+    -- the maximum parallelism, which is @ParalellismPerKPU@ times the maximum+    -- KPUs for the application. The maximum KPUs for an application is 32 by+    -- default, and can be increased by requesting a limit increase. If+    -- application load is reduced, the service will reduce+    -- @CurrentParallelism@ down to the @Parallelism@ setting.+    parallelismUpdate :: Prelude.Maybe Prelude.Natural+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ParallelismConfigurationUpdate' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'autoScalingEnabledUpdate', 'parallelismConfigurationUpdate_autoScalingEnabledUpdate' - Describes updates to whether the Kinesis Data Analytics service can+-- increase the parallelism of a Flink-based Kinesis Data Analytics+-- application in response to increased throughput.+--+-- 'configurationTypeUpdate', 'parallelismConfigurationUpdate_configurationTypeUpdate' - Describes updates to whether the application uses the default+-- parallelism for the Kinesis Data Analytics service, or if a custom+-- parallelism is used. You must set this property to @CUSTOM@ in order to+-- change your application\'s @AutoScalingEnabled@, @Parallelism@, or+-- @ParallelismPerKPU@ properties.+--+-- 'parallelismPerKPUUpdate', 'parallelismConfigurationUpdate_parallelismPerKPUUpdate' - Describes updates to the number of parallel tasks an application can+-- perform per Kinesis Processing Unit (KPU) used by the application.+--+-- 'parallelismUpdate', 'parallelismConfigurationUpdate_parallelismUpdate' - Describes updates to the initial number of parallel tasks an application+-- can perform. If @AutoScalingEnabled@ is set to True, then Kinesis Data+-- Analytics can increase the @CurrentParallelism@ value in response to+-- application load. The service can increase @CurrentParallelism@ up to+-- the maximum parallelism, which is @ParalellismPerKPU@ times the maximum+-- KPUs for the application. The maximum KPUs for an application is 32 by+-- default, and can be increased by requesting a limit increase. If+-- application load is reduced, the service will reduce+-- @CurrentParallelism@ down to the @Parallelism@ setting.+newParallelismConfigurationUpdate ::+  ParallelismConfigurationUpdate+newParallelismConfigurationUpdate =+  ParallelismConfigurationUpdate'+    { autoScalingEnabledUpdate =+        Prelude.Nothing,+      configurationTypeUpdate = Prelude.Nothing,+      parallelismPerKPUUpdate = Prelude.Nothing,+      parallelismUpdate = Prelude.Nothing+    }++-- | Describes updates to whether the Kinesis Data Analytics service can+-- increase the parallelism of a Flink-based Kinesis Data Analytics+-- application in response to increased throughput.+parallelismConfigurationUpdate_autoScalingEnabledUpdate :: Lens.Lens' ParallelismConfigurationUpdate (Prelude.Maybe Prelude.Bool)+parallelismConfigurationUpdate_autoScalingEnabledUpdate = Lens.lens (\ParallelismConfigurationUpdate' {autoScalingEnabledUpdate} -> autoScalingEnabledUpdate) (\s@ParallelismConfigurationUpdate' {} a -> s {autoScalingEnabledUpdate = a} :: ParallelismConfigurationUpdate)++-- | Describes updates to whether the application uses the default+-- parallelism for the Kinesis Data Analytics service, or if a custom+-- parallelism is used. You must set this property to @CUSTOM@ in order to+-- change your application\'s @AutoScalingEnabled@, @Parallelism@, or+-- @ParallelismPerKPU@ properties.+parallelismConfigurationUpdate_configurationTypeUpdate :: Lens.Lens' ParallelismConfigurationUpdate (Prelude.Maybe ConfigurationType)+parallelismConfigurationUpdate_configurationTypeUpdate = Lens.lens (\ParallelismConfigurationUpdate' {configurationTypeUpdate} -> configurationTypeUpdate) (\s@ParallelismConfigurationUpdate' {} a -> s {configurationTypeUpdate = a} :: ParallelismConfigurationUpdate)++-- | Describes updates to the number of parallel tasks an application can+-- perform per Kinesis Processing Unit (KPU) used by the application.+parallelismConfigurationUpdate_parallelismPerKPUUpdate :: Lens.Lens' ParallelismConfigurationUpdate (Prelude.Maybe Prelude.Natural)+parallelismConfigurationUpdate_parallelismPerKPUUpdate = Lens.lens (\ParallelismConfigurationUpdate' {parallelismPerKPUUpdate} -> parallelismPerKPUUpdate) (\s@ParallelismConfigurationUpdate' {} a -> s {parallelismPerKPUUpdate = a} :: ParallelismConfigurationUpdate)++-- | Describes updates to the initial number of parallel tasks an application+-- can perform. If @AutoScalingEnabled@ is set to True, then Kinesis Data+-- Analytics can increase the @CurrentParallelism@ value in response to+-- application load. The service can increase @CurrentParallelism@ up to+-- the maximum parallelism, which is @ParalellismPerKPU@ times the maximum+-- KPUs for the application. The maximum KPUs for an application is 32 by+-- default, and can be increased by requesting a limit increase. If+-- application load is reduced, the service will reduce+-- @CurrentParallelism@ down to the @Parallelism@ setting.+parallelismConfigurationUpdate_parallelismUpdate :: Lens.Lens' ParallelismConfigurationUpdate (Prelude.Maybe Prelude.Natural)+parallelismConfigurationUpdate_parallelismUpdate = Lens.lens (\ParallelismConfigurationUpdate' {parallelismUpdate} -> parallelismUpdate) (\s@ParallelismConfigurationUpdate' {} a -> s {parallelismUpdate = a} :: ParallelismConfigurationUpdate)++instance+  Prelude.Hashable+    ParallelismConfigurationUpdate+  where+  hashWithSalt+    _salt+    ParallelismConfigurationUpdate' {..} =+      _salt+        `Prelude.hashWithSalt` autoScalingEnabledUpdate+        `Prelude.hashWithSalt` configurationTypeUpdate+        `Prelude.hashWithSalt` parallelismPerKPUUpdate+        `Prelude.hashWithSalt` parallelismUpdate++instance+  Prelude.NFData+    ParallelismConfigurationUpdate+  where+  rnf ParallelismConfigurationUpdate' {..} =+    Prelude.rnf autoScalingEnabledUpdate+      `Prelude.seq` Prelude.rnf configurationTypeUpdate+      `Prelude.seq` Prelude.rnf parallelismPerKPUUpdate+      `Prelude.seq` Prelude.rnf parallelismUpdate++instance Data.ToJSON ParallelismConfigurationUpdate where+  toJSON ParallelismConfigurationUpdate' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("AutoScalingEnabledUpdate" Data..=)+              Prelude.<$> autoScalingEnabledUpdate,+            ("ConfigurationTypeUpdate" Data..=)+              Prelude.<$> configurationTypeUpdate,+            ("ParallelismPerKPUUpdate" Data..=)+              Prelude.<$> parallelismPerKPUUpdate,+            ("ParallelismUpdate" Data..=)+              Prelude.<$> parallelismUpdate+          ]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/PropertyGroup.hs view
@@ -0,0 +1,96 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.KinesisAnalyticsV2.Types.PropertyGroup+-- 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.KinesisAnalyticsV2.Types.PropertyGroup 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++-- | Property key-value pairs passed into an application.+--+-- /See:/ 'newPropertyGroup' smart constructor.+data PropertyGroup = PropertyGroup'+  { -- | Describes the key of an application execution property key-value pair.+    propertyGroupId :: Prelude.Text,+    -- | Describes the value of an application execution property key-value pair.+    propertyMap :: Prelude.HashMap Prelude.Text Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PropertyGroup' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'propertyGroupId', 'propertyGroup_propertyGroupId' - Describes the key of an application execution property key-value pair.+--+-- 'propertyMap', 'propertyGroup_propertyMap' - Describes the value of an application execution property key-value pair.+newPropertyGroup ::+  -- | 'propertyGroupId'+  Prelude.Text ->+  PropertyGroup+newPropertyGroup pPropertyGroupId_ =+  PropertyGroup'+    { propertyGroupId = pPropertyGroupId_,+      propertyMap = Prelude.mempty+    }++-- | Describes the key of an application execution property key-value pair.+propertyGroup_propertyGroupId :: Lens.Lens' PropertyGroup Prelude.Text+propertyGroup_propertyGroupId = Lens.lens (\PropertyGroup' {propertyGroupId} -> propertyGroupId) (\s@PropertyGroup' {} a -> s {propertyGroupId = a} :: PropertyGroup)++-- | Describes the value of an application execution property key-value pair.+propertyGroup_propertyMap :: Lens.Lens' PropertyGroup (Prelude.HashMap Prelude.Text Prelude.Text)+propertyGroup_propertyMap = Lens.lens (\PropertyGroup' {propertyMap} -> propertyMap) (\s@PropertyGroup' {} a -> s {propertyMap = a} :: PropertyGroup) Prelude.. Lens.coerced++instance Data.FromJSON PropertyGroup where+  parseJSON =+    Data.withObject+      "PropertyGroup"+      ( \x ->+          PropertyGroup'+            Prelude.<$> (x Data..: "PropertyGroupId")+            Prelude.<*> (x Data..:? "PropertyMap" Data..!= Prelude.mempty)+      )++instance Prelude.Hashable PropertyGroup where+  hashWithSalt _salt PropertyGroup' {..} =+    _salt+      `Prelude.hashWithSalt` propertyGroupId+      `Prelude.hashWithSalt` propertyMap++instance Prelude.NFData PropertyGroup where+  rnf PropertyGroup' {..} =+    Prelude.rnf propertyGroupId+      `Prelude.seq` Prelude.rnf propertyMap++instance Data.ToJSON PropertyGroup where+  toJSON PropertyGroup' {..} =+    Data.object+      ( Prelude.catMaybes+          [ Prelude.Just+              ("PropertyGroupId" Data..= propertyGroupId),+            Prelude.Just ("PropertyMap" Data..= propertyMap)+          ]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/RecordColumn.hs view
@@ -0,0 +1,123 @@+{-# 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.KinesisAnalyticsV2.Types.RecordColumn+-- 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.KinesisAnalyticsV2.Types.RecordColumn 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++-- | For a SQL-based Kinesis Data Analytics application, describes the+-- mapping of each data element in the streaming source to the+-- corresponding column in the in-application stream.+--+-- Also used to describe the format of the reference data source.+--+-- /See:/ 'newRecordColumn' smart constructor.+data RecordColumn = RecordColumn'+  { -- | A reference to the data element in the streaming input or the reference+    -- data source.+    mapping :: Prelude.Maybe Prelude.Text,+    -- | The name of the column that is created in the in-application input+    -- stream or reference table.+    name :: Prelude.Text,+    -- | The type of column created in the in-application input stream or+    -- reference table.+    sqlType :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'RecordColumn' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'mapping', 'recordColumn_mapping' - A reference to the data element in the streaming input or the reference+-- data source.+--+-- 'name', 'recordColumn_name' - The name of the column that is created in the in-application input+-- stream or reference table.+--+-- 'sqlType', 'recordColumn_sqlType' - The type of column created in the in-application input stream or+-- reference table.+newRecordColumn ::+  -- | 'name'+  Prelude.Text ->+  -- | 'sqlType'+  Prelude.Text ->+  RecordColumn+newRecordColumn pName_ pSqlType_ =+  RecordColumn'+    { mapping = Prelude.Nothing,+      name = pName_,+      sqlType = pSqlType_+    }++-- | A reference to the data element in the streaming input or the reference+-- data source.+recordColumn_mapping :: Lens.Lens' RecordColumn (Prelude.Maybe Prelude.Text)+recordColumn_mapping = Lens.lens (\RecordColumn' {mapping} -> mapping) (\s@RecordColumn' {} a -> s {mapping = a} :: RecordColumn)++-- | The name of the column that is created in the in-application input+-- stream or reference table.+recordColumn_name :: Lens.Lens' RecordColumn Prelude.Text+recordColumn_name = Lens.lens (\RecordColumn' {name} -> name) (\s@RecordColumn' {} a -> s {name = a} :: RecordColumn)++-- | The type of column created in the in-application input stream or+-- reference table.+recordColumn_sqlType :: Lens.Lens' RecordColumn Prelude.Text+recordColumn_sqlType = Lens.lens (\RecordColumn' {sqlType} -> sqlType) (\s@RecordColumn' {} a -> s {sqlType = a} :: RecordColumn)++instance Data.FromJSON RecordColumn where+  parseJSON =+    Data.withObject+      "RecordColumn"+      ( \x ->+          RecordColumn'+            Prelude.<$> (x Data..:? "Mapping")+            Prelude.<*> (x Data..: "Name")+            Prelude.<*> (x Data..: "SqlType")+      )++instance Prelude.Hashable RecordColumn where+  hashWithSalt _salt RecordColumn' {..} =+    _salt+      `Prelude.hashWithSalt` mapping+      `Prelude.hashWithSalt` name+      `Prelude.hashWithSalt` sqlType++instance Prelude.NFData RecordColumn where+  rnf RecordColumn' {..} =+    Prelude.rnf mapping+      `Prelude.seq` Prelude.rnf name+      `Prelude.seq` Prelude.rnf sqlType++instance Data.ToJSON RecordColumn where+  toJSON RecordColumn' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("Mapping" Data..=) Prelude.<$> mapping,+            Prelude.Just ("Name" Data..= name),+            Prelude.Just ("SqlType" Data..= sqlType)+          ]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/RecordFormat.hs view
@@ -0,0 +1,110 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.KinesisAnalyticsV2.Types.RecordFormat+-- 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.KinesisAnalyticsV2.Types.RecordFormat where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types.MappingParameters+import Amazonka.KinesisAnalyticsV2.Types.RecordFormatType+import qualified Amazonka.Prelude as Prelude++-- | For a SQL-based Kinesis Data Analytics application, describes the record+-- format and relevant mapping information that should be applied to+-- schematize the records on the stream.+--+-- /See:/ 'newRecordFormat' smart constructor.+data RecordFormat = RecordFormat'+  { -- | When you configure application input at the time of creating or updating+    -- an application, provides additional mapping information specific to the+    -- record format (such as JSON, CSV, or record fields delimited by some+    -- delimiter) on the streaming source.+    mappingParameters :: Prelude.Maybe MappingParameters,+    -- | The type of record format.+    recordFormatType :: RecordFormatType+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'RecordFormat' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'mappingParameters', 'recordFormat_mappingParameters' - When you configure application input at the time of creating or updating+-- an application, provides additional mapping information specific to the+-- record format (such as JSON, CSV, or record fields delimited by some+-- delimiter) on the streaming source.+--+-- 'recordFormatType', 'recordFormat_recordFormatType' - The type of record format.+newRecordFormat ::+  -- | 'recordFormatType'+  RecordFormatType ->+  RecordFormat+newRecordFormat pRecordFormatType_ =+  RecordFormat'+    { mappingParameters = Prelude.Nothing,+      recordFormatType = pRecordFormatType_+    }++-- | When you configure application input at the time of creating or updating+-- an application, provides additional mapping information specific to the+-- record format (such as JSON, CSV, or record fields delimited by some+-- delimiter) on the streaming source.+recordFormat_mappingParameters :: Lens.Lens' RecordFormat (Prelude.Maybe MappingParameters)+recordFormat_mappingParameters = Lens.lens (\RecordFormat' {mappingParameters} -> mappingParameters) (\s@RecordFormat' {} a -> s {mappingParameters = a} :: RecordFormat)++-- | The type of record format.+recordFormat_recordFormatType :: Lens.Lens' RecordFormat RecordFormatType+recordFormat_recordFormatType = Lens.lens (\RecordFormat' {recordFormatType} -> recordFormatType) (\s@RecordFormat' {} a -> s {recordFormatType = a} :: RecordFormat)++instance Data.FromJSON RecordFormat where+  parseJSON =+    Data.withObject+      "RecordFormat"+      ( \x ->+          RecordFormat'+            Prelude.<$> (x Data..:? "MappingParameters")+            Prelude.<*> (x Data..: "RecordFormatType")+      )++instance Prelude.Hashable RecordFormat where+  hashWithSalt _salt RecordFormat' {..} =+    _salt+      `Prelude.hashWithSalt` mappingParameters+      `Prelude.hashWithSalt` recordFormatType++instance Prelude.NFData RecordFormat where+  rnf RecordFormat' {..} =+    Prelude.rnf mappingParameters+      `Prelude.seq` Prelude.rnf recordFormatType++instance Data.ToJSON RecordFormat where+  toJSON RecordFormat' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("MappingParameters" Data..=)+              Prelude.<$> mappingParameters,+            Prelude.Just+              ("RecordFormatType" Data..= recordFormatType)+          ]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/RecordFormatType.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.KinesisAnalyticsV2.Types.RecordFormatType+-- 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.KinesisAnalyticsV2.Types.RecordFormatType+  ( RecordFormatType+      ( ..,+        RecordFormatType_CSV,+        RecordFormatType_JSON+      ),+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype RecordFormatType = RecordFormatType'+  { fromRecordFormatType ::+      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 RecordFormatType_CSV :: RecordFormatType+pattern RecordFormatType_CSV = RecordFormatType' "CSV"++pattern RecordFormatType_JSON :: RecordFormatType+pattern RecordFormatType_JSON = RecordFormatType' "JSON"++{-# COMPLETE+  RecordFormatType_CSV,+  RecordFormatType_JSON,+  RecordFormatType'+  #-}
+ gen/Amazonka/KinesisAnalyticsV2/Types/ReferenceDataSource.hs view
@@ -0,0 +1,123 @@+{-# 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.KinesisAnalyticsV2.Types.ReferenceDataSource+-- 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.KinesisAnalyticsV2.Types.ReferenceDataSource where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types.S3ReferenceDataSource+import Amazonka.KinesisAnalyticsV2.Types.SourceSchema+import qualified Amazonka.Prelude as Prelude++-- | For a SQL-based Kinesis Data Analytics application, describes the+-- reference data source by providing the source information (Amazon S3+-- bucket name and object key name), the resulting in-application table+-- name that is created, and the necessary schema to map the data elements+-- in the Amazon S3 object to the in-application table.+--+-- /See:/ 'newReferenceDataSource' smart constructor.+data ReferenceDataSource = ReferenceDataSource'+  { -- | Identifies the S3 bucket and object that contains the reference data. A+    -- Kinesis Data Analytics application loads reference data only once. If+    -- the data changes, you call the UpdateApplication operation to trigger+    -- reloading of data into your application.+    s3ReferenceDataSource :: Prelude.Maybe S3ReferenceDataSource,+    -- | The name of the in-application table to create.+    tableName :: Prelude.Text,+    -- | Describes the format of the data in the streaming source, and how each+    -- data element maps to corresponding columns created in the in-application+    -- stream.+    referenceSchema :: SourceSchema+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ReferenceDataSource' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 's3ReferenceDataSource', 'referenceDataSource_s3ReferenceDataSource' - Identifies the S3 bucket and object that contains the reference data. A+-- Kinesis Data Analytics application loads reference data only once. If+-- the data changes, you call the UpdateApplication operation to trigger+-- reloading of data into your application.+--+-- 'tableName', 'referenceDataSource_tableName' - The name of the in-application table to create.+--+-- 'referenceSchema', 'referenceDataSource_referenceSchema' - Describes the format of the data in the streaming source, and how each+-- data element maps to corresponding columns created in the in-application+-- stream.+newReferenceDataSource ::+  -- | 'tableName'+  Prelude.Text ->+  -- | 'referenceSchema'+  SourceSchema ->+  ReferenceDataSource+newReferenceDataSource pTableName_ pReferenceSchema_ =+  ReferenceDataSource'+    { s3ReferenceDataSource =+        Prelude.Nothing,+      tableName = pTableName_,+      referenceSchema = pReferenceSchema_+    }++-- | Identifies the S3 bucket and object that contains the reference data. A+-- Kinesis Data Analytics application loads reference data only once. If+-- the data changes, you call the UpdateApplication operation to trigger+-- reloading of data into your application.+referenceDataSource_s3ReferenceDataSource :: Lens.Lens' ReferenceDataSource (Prelude.Maybe S3ReferenceDataSource)+referenceDataSource_s3ReferenceDataSource = Lens.lens (\ReferenceDataSource' {s3ReferenceDataSource} -> s3ReferenceDataSource) (\s@ReferenceDataSource' {} a -> s {s3ReferenceDataSource = a} :: ReferenceDataSource)++-- | The name of the in-application table to create.+referenceDataSource_tableName :: Lens.Lens' ReferenceDataSource Prelude.Text+referenceDataSource_tableName = Lens.lens (\ReferenceDataSource' {tableName} -> tableName) (\s@ReferenceDataSource' {} a -> s {tableName = a} :: ReferenceDataSource)++-- | Describes the format of the data in the streaming source, and how each+-- data element maps to corresponding columns created in the in-application+-- stream.+referenceDataSource_referenceSchema :: Lens.Lens' ReferenceDataSource SourceSchema+referenceDataSource_referenceSchema = Lens.lens (\ReferenceDataSource' {referenceSchema} -> referenceSchema) (\s@ReferenceDataSource' {} a -> s {referenceSchema = a} :: ReferenceDataSource)++instance Prelude.Hashable ReferenceDataSource where+  hashWithSalt _salt ReferenceDataSource' {..} =+    _salt+      `Prelude.hashWithSalt` s3ReferenceDataSource+      `Prelude.hashWithSalt` tableName+      `Prelude.hashWithSalt` referenceSchema++instance Prelude.NFData ReferenceDataSource where+  rnf ReferenceDataSource' {..} =+    Prelude.rnf s3ReferenceDataSource+      `Prelude.seq` Prelude.rnf tableName+      `Prelude.seq` Prelude.rnf referenceSchema++instance Data.ToJSON ReferenceDataSource where+  toJSON ReferenceDataSource' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("S3ReferenceDataSource" Data..=)+              Prelude.<$> s3ReferenceDataSource,+            Prelude.Just ("TableName" Data..= tableName),+            Prelude.Just+              ("ReferenceSchema" Data..= referenceSchema)+          ]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/ReferenceDataSourceDescription.hs view
@@ -0,0 +1,148 @@+{-# 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.KinesisAnalyticsV2.Types.ReferenceDataSourceDescription+-- 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.KinesisAnalyticsV2.Types.ReferenceDataSourceDescription where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types.S3ReferenceDataSourceDescription+import Amazonka.KinesisAnalyticsV2.Types.SourceSchema+import qualified Amazonka.Prelude as Prelude++-- | For a SQL-based Kinesis Data Analytics application, describes the+-- reference data source configured for an application.+--+-- /See:/ 'newReferenceDataSourceDescription' smart constructor.+data ReferenceDataSourceDescription = ReferenceDataSourceDescription'+  { -- | Describes the format of the data in the streaming source, and how each+    -- data element maps to corresponding columns created in the in-application+    -- stream.+    referenceSchema :: Prelude.Maybe SourceSchema,+    -- | The ID of the reference data source. This is the ID that Kinesis Data+    -- Analytics assigns when you add the reference data source to your+    -- application using the CreateApplication or UpdateApplication operation.+    referenceId :: Prelude.Text,+    -- | The in-application table name created by the specific reference data+    -- source configuration.+    tableName :: Prelude.Text,+    -- | Provides the Amazon S3 bucket name, the object key name that contains+    -- the reference data.+    s3ReferenceDataSourceDescription :: S3ReferenceDataSourceDescription+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ReferenceDataSourceDescription' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'referenceSchema', 'referenceDataSourceDescription_referenceSchema' - Describes the format of the data in the streaming source, and how each+-- data element maps to corresponding columns created in the in-application+-- stream.+--+-- 'referenceId', 'referenceDataSourceDescription_referenceId' - The ID of the reference data source. This is the ID that Kinesis Data+-- Analytics assigns when you add the reference data source to your+-- application using the CreateApplication or UpdateApplication operation.+--+-- 'tableName', 'referenceDataSourceDescription_tableName' - The in-application table name created by the specific reference data+-- source configuration.+--+-- 's3ReferenceDataSourceDescription', 'referenceDataSourceDescription_s3ReferenceDataSourceDescription' - Provides the Amazon S3 bucket name, the object key name that contains+-- the reference data.+newReferenceDataSourceDescription ::+  -- | 'referenceId'+  Prelude.Text ->+  -- | 'tableName'+  Prelude.Text ->+  -- | 's3ReferenceDataSourceDescription'+  S3ReferenceDataSourceDescription ->+  ReferenceDataSourceDescription+newReferenceDataSourceDescription+  pReferenceId_+  pTableName_+  pS3ReferenceDataSourceDescription_ =+    ReferenceDataSourceDescription'+      { referenceSchema =+          Prelude.Nothing,+        referenceId = pReferenceId_,+        tableName = pTableName_,+        s3ReferenceDataSourceDescription =+          pS3ReferenceDataSourceDescription_+      }++-- | Describes the format of the data in the streaming source, and how each+-- data element maps to corresponding columns created in the in-application+-- stream.+referenceDataSourceDescription_referenceSchema :: Lens.Lens' ReferenceDataSourceDescription (Prelude.Maybe SourceSchema)+referenceDataSourceDescription_referenceSchema = Lens.lens (\ReferenceDataSourceDescription' {referenceSchema} -> referenceSchema) (\s@ReferenceDataSourceDescription' {} a -> s {referenceSchema = a} :: ReferenceDataSourceDescription)++-- | The ID of the reference data source. This is the ID that Kinesis Data+-- Analytics assigns when you add the reference data source to your+-- application using the CreateApplication or UpdateApplication operation.+referenceDataSourceDescription_referenceId :: Lens.Lens' ReferenceDataSourceDescription Prelude.Text+referenceDataSourceDescription_referenceId = Lens.lens (\ReferenceDataSourceDescription' {referenceId} -> referenceId) (\s@ReferenceDataSourceDescription' {} a -> s {referenceId = a} :: ReferenceDataSourceDescription)++-- | The in-application table name created by the specific reference data+-- source configuration.+referenceDataSourceDescription_tableName :: Lens.Lens' ReferenceDataSourceDescription Prelude.Text+referenceDataSourceDescription_tableName = Lens.lens (\ReferenceDataSourceDescription' {tableName} -> tableName) (\s@ReferenceDataSourceDescription' {} a -> s {tableName = a} :: ReferenceDataSourceDescription)++-- | Provides the Amazon S3 bucket name, the object key name that contains+-- the reference data.+referenceDataSourceDescription_s3ReferenceDataSourceDescription :: Lens.Lens' ReferenceDataSourceDescription S3ReferenceDataSourceDescription+referenceDataSourceDescription_s3ReferenceDataSourceDescription = Lens.lens (\ReferenceDataSourceDescription' {s3ReferenceDataSourceDescription} -> s3ReferenceDataSourceDescription) (\s@ReferenceDataSourceDescription' {} a -> s {s3ReferenceDataSourceDescription = a} :: ReferenceDataSourceDescription)++instance Data.FromJSON ReferenceDataSourceDescription where+  parseJSON =+    Data.withObject+      "ReferenceDataSourceDescription"+      ( \x ->+          ReferenceDataSourceDescription'+            Prelude.<$> (x Data..:? "ReferenceSchema")+            Prelude.<*> (x Data..: "ReferenceId")+            Prelude.<*> (x Data..: "TableName")+            Prelude.<*> (x Data..: "S3ReferenceDataSourceDescription")+      )++instance+  Prelude.Hashable+    ReferenceDataSourceDescription+  where+  hashWithSalt+    _salt+    ReferenceDataSourceDescription' {..} =+      _salt+        `Prelude.hashWithSalt` referenceSchema+        `Prelude.hashWithSalt` referenceId+        `Prelude.hashWithSalt` tableName+        `Prelude.hashWithSalt` s3ReferenceDataSourceDescription++instance+  Prelude.NFData+    ReferenceDataSourceDescription+  where+  rnf ReferenceDataSourceDescription' {..} =+    Prelude.rnf referenceSchema+      `Prelude.seq` Prelude.rnf referenceId+      `Prelude.seq` Prelude.rnf tableName+      `Prelude.seq` Prelude.rnf s3ReferenceDataSourceDescription
+ gen/Amazonka/KinesisAnalyticsV2/Types/ReferenceDataSourceUpdate.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.KinesisAnalyticsV2.Types.ReferenceDataSourceUpdate+-- 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.KinesisAnalyticsV2.Types.ReferenceDataSourceUpdate where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types.S3ReferenceDataSourceUpdate+import Amazonka.KinesisAnalyticsV2.Types.SourceSchema+import qualified Amazonka.Prelude as Prelude++-- | When you update a reference data source configuration for a SQL-based+-- Kinesis Data Analytics application, this object provides all the updated+-- values (such as the source bucket name and object key name), the+-- in-application table name that is created, and updated mapping+-- information that maps the data in the Amazon S3 object to the+-- in-application reference table that is created.+--+-- /See:/ 'newReferenceDataSourceUpdate' smart constructor.+data ReferenceDataSourceUpdate = ReferenceDataSourceUpdate'+  { -- | Describes the format of the data in the streaming source, and how each+    -- data element maps to corresponding columns created in the in-application+    -- stream.+    referenceSchemaUpdate :: Prelude.Maybe SourceSchema,+    -- | Describes the S3 bucket name, object key name, and IAM role that Kinesis+    -- Data Analytics can assume to read the Amazon S3 object on your behalf+    -- and populate the in-application reference table.+    s3ReferenceDataSourceUpdate :: Prelude.Maybe S3ReferenceDataSourceUpdate,+    -- | The in-application table name that is created by this update.+    tableNameUpdate :: Prelude.Maybe Prelude.Text,+    -- | The ID of the reference data source that is being updated. You can use+    -- the DescribeApplication operation to get this value.+    referenceId :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ReferenceDataSourceUpdate' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'referenceSchemaUpdate', 'referenceDataSourceUpdate_referenceSchemaUpdate' - Describes the format of the data in the streaming source, and how each+-- data element maps to corresponding columns created in the in-application+-- stream.+--+-- 's3ReferenceDataSourceUpdate', 'referenceDataSourceUpdate_s3ReferenceDataSourceUpdate' - Describes the S3 bucket name, object key name, and IAM role that Kinesis+-- Data Analytics can assume to read the Amazon S3 object on your behalf+-- and populate the in-application reference table.+--+-- 'tableNameUpdate', 'referenceDataSourceUpdate_tableNameUpdate' - The in-application table name that is created by this update.+--+-- 'referenceId', 'referenceDataSourceUpdate_referenceId' - The ID of the reference data source that is being updated. You can use+-- the DescribeApplication operation to get this value.+newReferenceDataSourceUpdate ::+  -- | 'referenceId'+  Prelude.Text ->+  ReferenceDataSourceUpdate+newReferenceDataSourceUpdate pReferenceId_ =+  ReferenceDataSourceUpdate'+    { referenceSchemaUpdate =+        Prelude.Nothing,+      s3ReferenceDataSourceUpdate = Prelude.Nothing,+      tableNameUpdate = Prelude.Nothing,+      referenceId = pReferenceId_+    }++-- | Describes the format of the data in the streaming source, and how each+-- data element maps to corresponding columns created in the in-application+-- stream.+referenceDataSourceUpdate_referenceSchemaUpdate :: Lens.Lens' ReferenceDataSourceUpdate (Prelude.Maybe SourceSchema)+referenceDataSourceUpdate_referenceSchemaUpdate = Lens.lens (\ReferenceDataSourceUpdate' {referenceSchemaUpdate} -> referenceSchemaUpdate) (\s@ReferenceDataSourceUpdate' {} a -> s {referenceSchemaUpdate = a} :: ReferenceDataSourceUpdate)++-- | Describes the S3 bucket name, object key name, and IAM role that Kinesis+-- Data Analytics can assume to read the Amazon S3 object on your behalf+-- and populate the in-application reference table.+referenceDataSourceUpdate_s3ReferenceDataSourceUpdate :: Lens.Lens' ReferenceDataSourceUpdate (Prelude.Maybe S3ReferenceDataSourceUpdate)+referenceDataSourceUpdate_s3ReferenceDataSourceUpdate = Lens.lens (\ReferenceDataSourceUpdate' {s3ReferenceDataSourceUpdate} -> s3ReferenceDataSourceUpdate) (\s@ReferenceDataSourceUpdate' {} a -> s {s3ReferenceDataSourceUpdate = a} :: ReferenceDataSourceUpdate)++-- | The in-application table name that is created by this update.+referenceDataSourceUpdate_tableNameUpdate :: Lens.Lens' ReferenceDataSourceUpdate (Prelude.Maybe Prelude.Text)+referenceDataSourceUpdate_tableNameUpdate = Lens.lens (\ReferenceDataSourceUpdate' {tableNameUpdate} -> tableNameUpdate) (\s@ReferenceDataSourceUpdate' {} a -> s {tableNameUpdate = a} :: ReferenceDataSourceUpdate)++-- | The ID of the reference data source that is being updated. You can use+-- the DescribeApplication operation to get this value.+referenceDataSourceUpdate_referenceId :: Lens.Lens' ReferenceDataSourceUpdate Prelude.Text+referenceDataSourceUpdate_referenceId = Lens.lens (\ReferenceDataSourceUpdate' {referenceId} -> referenceId) (\s@ReferenceDataSourceUpdate' {} a -> s {referenceId = a} :: ReferenceDataSourceUpdate)++instance Prelude.Hashable ReferenceDataSourceUpdate where+  hashWithSalt _salt ReferenceDataSourceUpdate' {..} =+    _salt+      `Prelude.hashWithSalt` referenceSchemaUpdate+      `Prelude.hashWithSalt` s3ReferenceDataSourceUpdate+      `Prelude.hashWithSalt` tableNameUpdate+      `Prelude.hashWithSalt` referenceId++instance Prelude.NFData ReferenceDataSourceUpdate where+  rnf ReferenceDataSourceUpdate' {..} =+    Prelude.rnf referenceSchemaUpdate+      `Prelude.seq` Prelude.rnf s3ReferenceDataSourceUpdate+      `Prelude.seq` Prelude.rnf tableNameUpdate+      `Prelude.seq` Prelude.rnf referenceId++instance Data.ToJSON ReferenceDataSourceUpdate where+  toJSON ReferenceDataSourceUpdate' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("ReferenceSchemaUpdate" Data..=)+              Prelude.<$> referenceSchemaUpdate,+            ("S3ReferenceDataSourceUpdate" Data..=)+              Prelude.<$> s3ReferenceDataSourceUpdate,+            ("TableNameUpdate" Data..=)+              Prelude.<$> tableNameUpdate,+            Prelude.Just ("ReferenceId" Data..= referenceId)+          ]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/RunConfiguration.hs view
@@ -0,0 +1,109 @@+{-# 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.KinesisAnalyticsV2.Types.RunConfiguration+-- 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.KinesisAnalyticsV2.Types.RunConfiguration where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types.ApplicationRestoreConfiguration+import Amazonka.KinesisAnalyticsV2.Types.FlinkRunConfiguration+import Amazonka.KinesisAnalyticsV2.Types.SqlRunConfiguration+import qualified Amazonka.Prelude as Prelude++-- | Describes the starting parameters for an Kinesis Data Analytics+-- application.+--+-- /See:/ 'newRunConfiguration' smart constructor.+data RunConfiguration = RunConfiguration'+  { -- | Describes the restore behavior of a restarting application.+    applicationRestoreConfiguration :: Prelude.Maybe ApplicationRestoreConfiguration,+    -- | Describes the starting parameters for a Flink-based Kinesis Data+    -- Analytics application.+    flinkRunConfiguration :: Prelude.Maybe FlinkRunConfiguration,+    -- | Describes the starting parameters for a SQL-based Kinesis Data Analytics+    -- application application.+    sqlRunConfigurations :: Prelude.Maybe [SqlRunConfiguration]+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'RunConfiguration' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applicationRestoreConfiguration', 'runConfiguration_applicationRestoreConfiguration' - Describes the restore behavior of a restarting application.+--+-- 'flinkRunConfiguration', 'runConfiguration_flinkRunConfiguration' - Describes the starting parameters for a Flink-based Kinesis Data+-- Analytics application.+--+-- 'sqlRunConfigurations', 'runConfiguration_sqlRunConfigurations' - Describes the starting parameters for a SQL-based Kinesis Data Analytics+-- application application.+newRunConfiguration ::+  RunConfiguration+newRunConfiguration =+  RunConfiguration'+    { applicationRestoreConfiguration =+        Prelude.Nothing,+      flinkRunConfiguration = Prelude.Nothing,+      sqlRunConfigurations = Prelude.Nothing+    }++-- | Describes the restore behavior of a restarting application.+runConfiguration_applicationRestoreConfiguration :: Lens.Lens' RunConfiguration (Prelude.Maybe ApplicationRestoreConfiguration)+runConfiguration_applicationRestoreConfiguration = Lens.lens (\RunConfiguration' {applicationRestoreConfiguration} -> applicationRestoreConfiguration) (\s@RunConfiguration' {} a -> s {applicationRestoreConfiguration = a} :: RunConfiguration)++-- | Describes the starting parameters for a Flink-based Kinesis Data+-- Analytics application.+runConfiguration_flinkRunConfiguration :: Lens.Lens' RunConfiguration (Prelude.Maybe FlinkRunConfiguration)+runConfiguration_flinkRunConfiguration = Lens.lens (\RunConfiguration' {flinkRunConfiguration} -> flinkRunConfiguration) (\s@RunConfiguration' {} a -> s {flinkRunConfiguration = a} :: RunConfiguration)++-- | Describes the starting parameters for a SQL-based Kinesis Data Analytics+-- application application.+runConfiguration_sqlRunConfigurations :: Lens.Lens' RunConfiguration (Prelude.Maybe [SqlRunConfiguration])+runConfiguration_sqlRunConfigurations = Lens.lens (\RunConfiguration' {sqlRunConfigurations} -> sqlRunConfigurations) (\s@RunConfiguration' {} a -> s {sqlRunConfigurations = a} :: RunConfiguration) Prelude.. Lens.mapping Lens.coerced++instance Prelude.Hashable RunConfiguration where+  hashWithSalt _salt RunConfiguration' {..} =+    _salt+      `Prelude.hashWithSalt` applicationRestoreConfiguration+      `Prelude.hashWithSalt` flinkRunConfiguration+      `Prelude.hashWithSalt` sqlRunConfigurations++instance Prelude.NFData RunConfiguration where+  rnf RunConfiguration' {..} =+    Prelude.rnf applicationRestoreConfiguration+      `Prelude.seq` Prelude.rnf flinkRunConfiguration+      `Prelude.seq` Prelude.rnf sqlRunConfigurations++instance Data.ToJSON RunConfiguration where+  toJSON RunConfiguration' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("ApplicationRestoreConfiguration" Data..=)+              Prelude.<$> applicationRestoreConfiguration,+            ("FlinkRunConfiguration" Data..=)+              Prelude.<$> flinkRunConfiguration,+            ("SqlRunConfigurations" Data..=)+              Prelude.<$> sqlRunConfigurations+          ]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/RunConfigurationDescription.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.KinesisAnalyticsV2.Types.RunConfigurationDescription+-- 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.KinesisAnalyticsV2.Types.RunConfigurationDescription where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types.ApplicationRestoreConfiguration+import Amazonka.KinesisAnalyticsV2.Types.FlinkRunConfiguration+import qualified Amazonka.Prelude as Prelude++-- | Describes the starting properties for a Kinesis Data Analytics+-- application.+--+-- /See:/ 'newRunConfigurationDescription' smart constructor.+data RunConfigurationDescription = RunConfigurationDescription'+  { -- | Describes the restore behavior of a restarting application.+    applicationRestoreConfigurationDescription :: Prelude.Maybe ApplicationRestoreConfiguration,+    flinkRunConfigurationDescription :: Prelude.Maybe FlinkRunConfiguration+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'RunConfigurationDescription' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applicationRestoreConfigurationDescription', 'runConfigurationDescription_applicationRestoreConfigurationDescription' - Describes the restore behavior of a restarting application.+--+-- 'flinkRunConfigurationDescription', 'runConfigurationDescription_flinkRunConfigurationDescription' - Undocumented member.+newRunConfigurationDescription ::+  RunConfigurationDescription+newRunConfigurationDescription =+  RunConfigurationDescription'+    { applicationRestoreConfigurationDescription =+        Prelude.Nothing,+      flinkRunConfigurationDescription =+        Prelude.Nothing+    }++-- | Describes the restore behavior of a restarting application.+runConfigurationDescription_applicationRestoreConfigurationDescription :: Lens.Lens' RunConfigurationDescription (Prelude.Maybe ApplicationRestoreConfiguration)+runConfigurationDescription_applicationRestoreConfigurationDescription = Lens.lens (\RunConfigurationDescription' {applicationRestoreConfigurationDescription} -> applicationRestoreConfigurationDescription) (\s@RunConfigurationDescription' {} a -> s {applicationRestoreConfigurationDescription = a} :: RunConfigurationDescription)++-- | Undocumented member.+runConfigurationDescription_flinkRunConfigurationDescription :: Lens.Lens' RunConfigurationDescription (Prelude.Maybe FlinkRunConfiguration)+runConfigurationDescription_flinkRunConfigurationDescription = Lens.lens (\RunConfigurationDescription' {flinkRunConfigurationDescription} -> flinkRunConfigurationDescription) (\s@RunConfigurationDescription' {} a -> s {flinkRunConfigurationDescription = a} :: RunConfigurationDescription)++instance Data.FromJSON RunConfigurationDescription where+  parseJSON =+    Data.withObject+      "RunConfigurationDescription"+      ( \x ->+          RunConfigurationDescription'+            Prelude.<$> ( x+                            Data..:? "ApplicationRestoreConfigurationDescription"+                        )+            Prelude.<*> (x Data..:? "FlinkRunConfigurationDescription")+      )++instance Prelude.Hashable RunConfigurationDescription where+  hashWithSalt _salt RunConfigurationDescription' {..} =+    _salt+      `Prelude.hashWithSalt` applicationRestoreConfigurationDescription+      `Prelude.hashWithSalt` flinkRunConfigurationDescription++instance Prelude.NFData RunConfigurationDescription where+  rnf RunConfigurationDescription' {..} =+    Prelude.rnf+      applicationRestoreConfigurationDescription+      `Prelude.seq` Prelude.rnf flinkRunConfigurationDescription
+ gen/Amazonka/KinesisAnalyticsV2/Types/RunConfigurationUpdate.hs view
@@ -0,0 +1,92 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.KinesisAnalyticsV2.Types.RunConfigurationUpdate+-- 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.KinesisAnalyticsV2.Types.RunConfigurationUpdate where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types.ApplicationRestoreConfiguration+import Amazonka.KinesisAnalyticsV2.Types.FlinkRunConfiguration+import qualified Amazonka.Prelude as Prelude++-- | Describes the updates to the starting parameters for a Kinesis Data+-- Analytics application.+--+-- /See:/ 'newRunConfigurationUpdate' smart constructor.+data RunConfigurationUpdate = RunConfigurationUpdate'+  { -- | Describes updates to the restore behavior of a restarting application.+    applicationRestoreConfiguration :: Prelude.Maybe ApplicationRestoreConfiguration,+    -- | Describes the starting parameters for a Flink-based Kinesis Data+    -- Analytics application.+    flinkRunConfiguration :: Prelude.Maybe FlinkRunConfiguration+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'RunConfigurationUpdate' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applicationRestoreConfiguration', 'runConfigurationUpdate_applicationRestoreConfiguration' - Describes updates to the restore behavior of a restarting application.+--+-- 'flinkRunConfiguration', 'runConfigurationUpdate_flinkRunConfiguration' - Describes the starting parameters for a Flink-based Kinesis Data+-- Analytics application.+newRunConfigurationUpdate ::+  RunConfigurationUpdate+newRunConfigurationUpdate =+  RunConfigurationUpdate'+    { applicationRestoreConfiguration =+        Prelude.Nothing,+      flinkRunConfiguration = Prelude.Nothing+    }++-- | Describes updates to the restore behavior of a restarting application.+runConfigurationUpdate_applicationRestoreConfiguration :: Lens.Lens' RunConfigurationUpdate (Prelude.Maybe ApplicationRestoreConfiguration)+runConfigurationUpdate_applicationRestoreConfiguration = Lens.lens (\RunConfigurationUpdate' {applicationRestoreConfiguration} -> applicationRestoreConfiguration) (\s@RunConfigurationUpdate' {} a -> s {applicationRestoreConfiguration = a} :: RunConfigurationUpdate)++-- | Describes the starting parameters for a Flink-based Kinesis Data+-- Analytics application.+runConfigurationUpdate_flinkRunConfiguration :: Lens.Lens' RunConfigurationUpdate (Prelude.Maybe FlinkRunConfiguration)+runConfigurationUpdate_flinkRunConfiguration = Lens.lens (\RunConfigurationUpdate' {flinkRunConfiguration} -> flinkRunConfiguration) (\s@RunConfigurationUpdate' {} a -> s {flinkRunConfiguration = a} :: RunConfigurationUpdate)++instance Prelude.Hashable RunConfigurationUpdate where+  hashWithSalt _salt RunConfigurationUpdate' {..} =+    _salt+      `Prelude.hashWithSalt` applicationRestoreConfiguration+      `Prelude.hashWithSalt` flinkRunConfiguration++instance Prelude.NFData RunConfigurationUpdate where+  rnf RunConfigurationUpdate' {..} =+    Prelude.rnf applicationRestoreConfiguration+      `Prelude.seq` Prelude.rnf flinkRunConfiguration++instance Data.ToJSON RunConfigurationUpdate where+  toJSON RunConfigurationUpdate' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("ApplicationRestoreConfiguration" Data..=)+              Prelude.<$> applicationRestoreConfiguration,+            ("FlinkRunConfiguration" Data..=)+              Prelude.<$> flinkRunConfiguration+          ]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/RuntimeEnvironment.hs view
@@ -0,0 +1,101 @@+{-# 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.KinesisAnalyticsV2.Types.RuntimeEnvironment+-- 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.KinesisAnalyticsV2.Types.RuntimeEnvironment+  ( RuntimeEnvironment+      ( ..,+        RuntimeEnvironment_FLINK_1_11,+        RuntimeEnvironment_FLINK_1_13,+        RuntimeEnvironment_FLINK_1_15,+        RuntimeEnvironment_FLINK_1_6,+        RuntimeEnvironment_FLINK_1_8,+        RuntimeEnvironment_SQL_1_0,+        RuntimeEnvironment_ZEPPELIN_FLINK_1_0,+        RuntimeEnvironment_ZEPPELIN_FLINK_2_0+      ),+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype RuntimeEnvironment = RuntimeEnvironment'+  { fromRuntimeEnvironment ::+      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 RuntimeEnvironment_FLINK_1_11 :: RuntimeEnvironment+pattern RuntimeEnvironment_FLINK_1_11 = RuntimeEnvironment' "FLINK-1_11"++pattern RuntimeEnvironment_FLINK_1_13 :: RuntimeEnvironment+pattern RuntimeEnvironment_FLINK_1_13 = RuntimeEnvironment' "FLINK-1_13"++pattern RuntimeEnvironment_FLINK_1_15 :: RuntimeEnvironment+pattern RuntimeEnvironment_FLINK_1_15 = RuntimeEnvironment' "FLINK-1_15"++pattern RuntimeEnvironment_FLINK_1_6 :: RuntimeEnvironment+pattern RuntimeEnvironment_FLINK_1_6 = RuntimeEnvironment' "FLINK-1_6"++pattern RuntimeEnvironment_FLINK_1_8 :: RuntimeEnvironment+pattern RuntimeEnvironment_FLINK_1_8 = RuntimeEnvironment' "FLINK-1_8"++pattern RuntimeEnvironment_SQL_1_0 :: RuntimeEnvironment+pattern RuntimeEnvironment_SQL_1_0 = RuntimeEnvironment' "SQL-1_0"++pattern RuntimeEnvironment_ZEPPELIN_FLINK_1_0 :: RuntimeEnvironment+pattern RuntimeEnvironment_ZEPPELIN_FLINK_1_0 = RuntimeEnvironment' "ZEPPELIN-FLINK-1_0"++pattern RuntimeEnvironment_ZEPPELIN_FLINK_2_0 :: RuntimeEnvironment+pattern RuntimeEnvironment_ZEPPELIN_FLINK_2_0 = RuntimeEnvironment' "ZEPPELIN-FLINK-2_0"++{-# COMPLETE+  RuntimeEnvironment_FLINK_1_11,+  RuntimeEnvironment_FLINK_1_13,+  RuntimeEnvironment_FLINK_1_15,+  RuntimeEnvironment_FLINK_1_6,+  RuntimeEnvironment_FLINK_1_8,+  RuntimeEnvironment_SQL_1_0,+  RuntimeEnvironment_ZEPPELIN_FLINK_1_0,+  RuntimeEnvironment_ZEPPELIN_FLINK_2_0,+  RuntimeEnvironment'+  #-}
+ gen/Amazonka/KinesisAnalyticsV2/Types/S3ApplicationCodeLocationDescription.hs view
@@ -0,0 +1,117 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.KinesisAnalyticsV2.Types.S3ApplicationCodeLocationDescription+-- 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.KinesisAnalyticsV2.Types.S3ApplicationCodeLocationDescription 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++-- | Describes the location of an application\'s code stored in an S3 bucket.+--+-- /See:/ 'newS3ApplicationCodeLocationDescription' smart constructor.+data S3ApplicationCodeLocationDescription = S3ApplicationCodeLocationDescription'+  { -- | The version of the object containing the application code.+    objectVersion :: Prelude.Maybe Prelude.Text,+    -- | The Amazon Resource Name (ARN) for the S3 bucket containing the+    -- application code.+    bucketARN :: Prelude.Text,+    -- | The file key for the object containing the application code.+    fileKey :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'S3ApplicationCodeLocationDescription' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'objectVersion', 's3ApplicationCodeLocationDescription_objectVersion' - The version of the object containing the application code.+--+-- 'bucketARN', 's3ApplicationCodeLocationDescription_bucketARN' - The Amazon Resource Name (ARN) for the S3 bucket containing the+-- application code.+--+-- 'fileKey', 's3ApplicationCodeLocationDescription_fileKey' - The file key for the object containing the application code.+newS3ApplicationCodeLocationDescription ::+  -- | 'bucketARN'+  Prelude.Text ->+  -- | 'fileKey'+  Prelude.Text ->+  S3ApplicationCodeLocationDescription+newS3ApplicationCodeLocationDescription+  pBucketARN_+  pFileKey_ =+    S3ApplicationCodeLocationDescription'+      { objectVersion =+          Prelude.Nothing,+        bucketARN = pBucketARN_,+        fileKey = pFileKey_+      }++-- | The version of the object containing the application code.+s3ApplicationCodeLocationDescription_objectVersion :: Lens.Lens' S3ApplicationCodeLocationDescription (Prelude.Maybe Prelude.Text)+s3ApplicationCodeLocationDescription_objectVersion = Lens.lens (\S3ApplicationCodeLocationDescription' {objectVersion} -> objectVersion) (\s@S3ApplicationCodeLocationDescription' {} a -> s {objectVersion = a} :: S3ApplicationCodeLocationDescription)++-- | The Amazon Resource Name (ARN) for the S3 bucket containing the+-- application code.+s3ApplicationCodeLocationDescription_bucketARN :: Lens.Lens' S3ApplicationCodeLocationDescription Prelude.Text+s3ApplicationCodeLocationDescription_bucketARN = Lens.lens (\S3ApplicationCodeLocationDescription' {bucketARN} -> bucketARN) (\s@S3ApplicationCodeLocationDescription' {} a -> s {bucketARN = a} :: S3ApplicationCodeLocationDescription)++-- | The file key for the object containing the application code.+s3ApplicationCodeLocationDescription_fileKey :: Lens.Lens' S3ApplicationCodeLocationDescription Prelude.Text+s3ApplicationCodeLocationDescription_fileKey = Lens.lens (\S3ApplicationCodeLocationDescription' {fileKey} -> fileKey) (\s@S3ApplicationCodeLocationDescription' {} a -> s {fileKey = a} :: S3ApplicationCodeLocationDescription)++instance+  Data.FromJSON+    S3ApplicationCodeLocationDescription+  where+  parseJSON =+    Data.withObject+      "S3ApplicationCodeLocationDescription"+      ( \x ->+          S3ApplicationCodeLocationDescription'+            Prelude.<$> (x Data..:? "ObjectVersion")+            Prelude.<*> (x Data..: "BucketARN")+            Prelude.<*> (x Data..: "FileKey")+      )++instance+  Prelude.Hashable+    S3ApplicationCodeLocationDescription+  where+  hashWithSalt+    _salt+    S3ApplicationCodeLocationDescription' {..} =+      _salt+        `Prelude.hashWithSalt` objectVersion+        `Prelude.hashWithSalt` bucketARN+        `Prelude.hashWithSalt` fileKey++instance+  Prelude.NFData+    S3ApplicationCodeLocationDescription+  where+  rnf S3ApplicationCodeLocationDescription' {..} =+    Prelude.rnf objectVersion+      `Prelude.seq` Prelude.rnf bucketARN+      `Prelude.seq` Prelude.rnf fileKey
+ gen/Amazonka/KinesisAnalyticsV2/Types/S3Configuration.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.KinesisAnalyticsV2.Types.S3Configuration+-- 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.KinesisAnalyticsV2.Types.S3Configuration 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++-- | For a SQL-based Kinesis Data Analytics application, provides a+-- description of an Amazon S3 data source, including the Amazon Resource+-- Name (ARN) of the S3 bucket and the name of the Amazon S3 object that+-- contains the data.+--+-- /See:/ 'newS3Configuration' smart constructor.+data S3Configuration = S3Configuration'+  { -- | The ARN of the S3 bucket that contains the data.+    bucketARN :: Prelude.Text,+    -- | The name of the object that contains the data.+    fileKey :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'S3Configuration' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'bucketARN', 's3Configuration_bucketARN' - The ARN of the S3 bucket that contains the data.+--+-- 'fileKey', 's3Configuration_fileKey' - The name of the object that contains the data.+newS3Configuration ::+  -- | 'bucketARN'+  Prelude.Text ->+  -- | 'fileKey'+  Prelude.Text ->+  S3Configuration+newS3Configuration pBucketARN_ pFileKey_ =+  S3Configuration'+    { bucketARN = pBucketARN_,+      fileKey = pFileKey_+    }++-- | The ARN of the S3 bucket that contains the data.+s3Configuration_bucketARN :: Lens.Lens' S3Configuration Prelude.Text+s3Configuration_bucketARN = Lens.lens (\S3Configuration' {bucketARN} -> bucketARN) (\s@S3Configuration' {} a -> s {bucketARN = a} :: S3Configuration)++-- | The name of the object that contains the data.+s3Configuration_fileKey :: Lens.Lens' S3Configuration Prelude.Text+s3Configuration_fileKey = Lens.lens (\S3Configuration' {fileKey} -> fileKey) (\s@S3Configuration' {} a -> s {fileKey = a} :: S3Configuration)++instance Prelude.Hashable S3Configuration where+  hashWithSalt _salt S3Configuration' {..} =+    _salt+      `Prelude.hashWithSalt` bucketARN+      `Prelude.hashWithSalt` fileKey++instance Prelude.NFData S3Configuration where+  rnf S3Configuration' {..} =+    Prelude.rnf bucketARN+      `Prelude.seq` Prelude.rnf fileKey++instance Data.ToJSON S3Configuration where+  toJSON S3Configuration' {..} =+    Data.object+      ( Prelude.catMaybes+          [ Prelude.Just ("BucketARN" Data..= bucketARN),+            Prelude.Just ("FileKey" Data..= fileKey)+          ]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/S3ContentBaseLocation.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.KinesisAnalyticsV2.Types.S3ContentBaseLocation+-- 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.KinesisAnalyticsV2.Types.S3ContentBaseLocation 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 S3 bucket that holds the application information.+--+-- /See:/ 'newS3ContentBaseLocation' smart constructor.+data S3ContentBaseLocation = S3ContentBaseLocation'+  { -- | The base path for the S3 bucket.+    basePath :: Prelude.Maybe Prelude.Text,+    -- | The Amazon Resource Name (ARN) of the S3 bucket.+    bucketARN :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'S3ContentBaseLocation' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'basePath', 's3ContentBaseLocation_basePath' - The base path for the S3 bucket.+--+-- 'bucketARN', 's3ContentBaseLocation_bucketARN' - The Amazon Resource Name (ARN) of the S3 bucket.+newS3ContentBaseLocation ::+  -- | 'bucketARN'+  Prelude.Text ->+  S3ContentBaseLocation+newS3ContentBaseLocation pBucketARN_ =+  S3ContentBaseLocation'+    { basePath = Prelude.Nothing,+      bucketARN = pBucketARN_+    }++-- | The base path for the S3 bucket.+s3ContentBaseLocation_basePath :: Lens.Lens' S3ContentBaseLocation (Prelude.Maybe Prelude.Text)+s3ContentBaseLocation_basePath = Lens.lens (\S3ContentBaseLocation' {basePath} -> basePath) (\s@S3ContentBaseLocation' {} a -> s {basePath = a} :: S3ContentBaseLocation)++-- | The Amazon Resource Name (ARN) of the S3 bucket.+s3ContentBaseLocation_bucketARN :: Lens.Lens' S3ContentBaseLocation Prelude.Text+s3ContentBaseLocation_bucketARN = Lens.lens (\S3ContentBaseLocation' {bucketARN} -> bucketARN) (\s@S3ContentBaseLocation' {} a -> s {bucketARN = a} :: S3ContentBaseLocation)++instance Prelude.Hashable S3ContentBaseLocation where+  hashWithSalt _salt S3ContentBaseLocation' {..} =+    _salt+      `Prelude.hashWithSalt` basePath+      `Prelude.hashWithSalt` bucketARN++instance Prelude.NFData S3ContentBaseLocation where+  rnf S3ContentBaseLocation' {..} =+    Prelude.rnf basePath+      `Prelude.seq` Prelude.rnf bucketARN++instance Data.ToJSON S3ContentBaseLocation where+  toJSON S3ContentBaseLocation' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("BasePath" Data..=) Prelude.<$> basePath,+            Prelude.Just ("BucketARN" Data..= bucketARN)+          ]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/S3ContentBaseLocationDescription.hs view
@@ -0,0 +1,98 @@+{-# 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.KinesisAnalyticsV2.Types.S3ContentBaseLocationDescription+-- 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.KinesisAnalyticsV2.Types.S3ContentBaseLocationDescription 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 description of the S3 base location that holds the application.+--+-- /See:/ 'newS3ContentBaseLocationDescription' smart constructor.+data S3ContentBaseLocationDescription = S3ContentBaseLocationDescription'+  { -- | The base path for the S3 bucket.+    basePath :: Prelude.Maybe Prelude.Text,+    -- | The Amazon Resource Name (ARN) of the S3 bucket.+    bucketARN :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'S3ContentBaseLocationDescription' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'basePath', 's3ContentBaseLocationDescription_basePath' - The base path for the S3 bucket.+--+-- 'bucketARN', 's3ContentBaseLocationDescription_bucketARN' - The Amazon Resource Name (ARN) of the S3 bucket.+newS3ContentBaseLocationDescription ::+  -- | 'bucketARN'+  Prelude.Text ->+  S3ContentBaseLocationDescription+newS3ContentBaseLocationDescription pBucketARN_ =+  S3ContentBaseLocationDescription'+    { basePath =+        Prelude.Nothing,+      bucketARN = pBucketARN_+    }++-- | The base path for the S3 bucket.+s3ContentBaseLocationDescription_basePath :: Lens.Lens' S3ContentBaseLocationDescription (Prelude.Maybe Prelude.Text)+s3ContentBaseLocationDescription_basePath = Lens.lens (\S3ContentBaseLocationDescription' {basePath} -> basePath) (\s@S3ContentBaseLocationDescription' {} a -> s {basePath = a} :: S3ContentBaseLocationDescription)++-- | The Amazon Resource Name (ARN) of the S3 bucket.+s3ContentBaseLocationDescription_bucketARN :: Lens.Lens' S3ContentBaseLocationDescription Prelude.Text+s3ContentBaseLocationDescription_bucketARN = Lens.lens (\S3ContentBaseLocationDescription' {bucketARN} -> bucketARN) (\s@S3ContentBaseLocationDescription' {} a -> s {bucketARN = a} :: S3ContentBaseLocationDescription)++instance+  Data.FromJSON+    S3ContentBaseLocationDescription+  where+  parseJSON =+    Data.withObject+      "S3ContentBaseLocationDescription"+      ( \x ->+          S3ContentBaseLocationDescription'+            Prelude.<$> (x Data..:? "BasePath")+            Prelude.<*> (x Data..: "BucketARN")+      )++instance+  Prelude.Hashable+    S3ContentBaseLocationDescription+  where+  hashWithSalt+    _salt+    S3ContentBaseLocationDescription' {..} =+      _salt+        `Prelude.hashWithSalt` basePath+        `Prelude.hashWithSalt` bucketARN++instance+  Prelude.NFData+    S3ContentBaseLocationDescription+  where+  rnf S3ContentBaseLocationDescription' {..} =+    Prelude.rnf basePath+      `Prelude.seq` Prelude.rnf bucketARN
+ gen/Amazonka/KinesisAnalyticsV2/Types/S3ContentBaseLocationUpdate.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.KinesisAnalyticsV2.Types.S3ContentBaseLocationUpdate+-- 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.KinesisAnalyticsV2.Types.S3ContentBaseLocationUpdate 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 required to update the S3 base location that holds the+-- application.+--+-- /See:/ 'newS3ContentBaseLocationUpdate' smart constructor.+data S3ContentBaseLocationUpdate = S3ContentBaseLocationUpdate'+  { -- | The updated S3 bucket path.+    basePathUpdate :: Prelude.Maybe Prelude.Text,+    -- | The updated Amazon Resource Name (ARN) of the S3 bucket.+    bucketARNUpdate :: Prelude.Maybe Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'S3ContentBaseLocationUpdate' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'basePathUpdate', 's3ContentBaseLocationUpdate_basePathUpdate' - The updated S3 bucket path.+--+-- 'bucketARNUpdate', 's3ContentBaseLocationUpdate_bucketARNUpdate' - The updated Amazon Resource Name (ARN) of the S3 bucket.+newS3ContentBaseLocationUpdate ::+  S3ContentBaseLocationUpdate+newS3ContentBaseLocationUpdate =+  S3ContentBaseLocationUpdate'+    { basePathUpdate =+        Prelude.Nothing,+      bucketARNUpdate = Prelude.Nothing+    }++-- | The updated S3 bucket path.+s3ContentBaseLocationUpdate_basePathUpdate :: Lens.Lens' S3ContentBaseLocationUpdate (Prelude.Maybe Prelude.Text)+s3ContentBaseLocationUpdate_basePathUpdate = Lens.lens (\S3ContentBaseLocationUpdate' {basePathUpdate} -> basePathUpdate) (\s@S3ContentBaseLocationUpdate' {} a -> s {basePathUpdate = a} :: S3ContentBaseLocationUpdate)++-- | The updated Amazon Resource Name (ARN) of the S3 bucket.+s3ContentBaseLocationUpdate_bucketARNUpdate :: Lens.Lens' S3ContentBaseLocationUpdate (Prelude.Maybe Prelude.Text)+s3ContentBaseLocationUpdate_bucketARNUpdate = Lens.lens (\S3ContentBaseLocationUpdate' {bucketARNUpdate} -> bucketARNUpdate) (\s@S3ContentBaseLocationUpdate' {} a -> s {bucketARNUpdate = a} :: S3ContentBaseLocationUpdate)++instance Prelude.Hashable S3ContentBaseLocationUpdate where+  hashWithSalt _salt S3ContentBaseLocationUpdate' {..} =+    _salt+      `Prelude.hashWithSalt` basePathUpdate+      `Prelude.hashWithSalt` bucketARNUpdate++instance Prelude.NFData S3ContentBaseLocationUpdate where+  rnf S3ContentBaseLocationUpdate' {..} =+    Prelude.rnf basePathUpdate+      `Prelude.seq` Prelude.rnf bucketARNUpdate++instance Data.ToJSON S3ContentBaseLocationUpdate where+  toJSON S3ContentBaseLocationUpdate' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("BasePathUpdate" Data..=)+              Prelude.<$> basePathUpdate,+            ("BucketARNUpdate" Data..=)+              Prelude.<$> bucketARNUpdate+          ]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/S3ContentLocation.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.KinesisAnalyticsV2.Types.S3ContentLocation+-- 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.KinesisAnalyticsV2.Types.S3ContentLocation 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++-- | For a Kinesis Data Analytics application provides a description of an+-- Amazon S3 object, including the Amazon Resource Name (ARN) of the S3+-- bucket, the name of the Amazon S3 object that contains the data, and the+-- version number of the Amazon S3 object that contains the data.+--+-- /See:/ 'newS3ContentLocation' smart constructor.+data S3ContentLocation = S3ContentLocation'+  { -- | The version of the object containing the application code.+    objectVersion :: Prelude.Maybe Prelude.Text,+    -- | The Amazon Resource Name (ARN) for the S3 bucket containing the+    -- application code.+    bucketARN :: Prelude.Text,+    -- | The file key for the object containing the application code.+    fileKey :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'S3ContentLocation' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'objectVersion', 's3ContentLocation_objectVersion' - The version of the object containing the application code.+--+-- 'bucketARN', 's3ContentLocation_bucketARN' - The Amazon Resource Name (ARN) for the S3 bucket containing the+-- application code.+--+-- 'fileKey', 's3ContentLocation_fileKey' - The file key for the object containing the application code.+newS3ContentLocation ::+  -- | 'bucketARN'+  Prelude.Text ->+  -- | 'fileKey'+  Prelude.Text ->+  S3ContentLocation+newS3ContentLocation pBucketARN_ pFileKey_ =+  S3ContentLocation'+    { objectVersion = Prelude.Nothing,+      bucketARN = pBucketARN_,+      fileKey = pFileKey_+    }++-- | The version of the object containing the application code.+s3ContentLocation_objectVersion :: Lens.Lens' S3ContentLocation (Prelude.Maybe Prelude.Text)+s3ContentLocation_objectVersion = Lens.lens (\S3ContentLocation' {objectVersion} -> objectVersion) (\s@S3ContentLocation' {} a -> s {objectVersion = a} :: S3ContentLocation)++-- | The Amazon Resource Name (ARN) for the S3 bucket containing the+-- application code.+s3ContentLocation_bucketARN :: Lens.Lens' S3ContentLocation Prelude.Text+s3ContentLocation_bucketARN = Lens.lens (\S3ContentLocation' {bucketARN} -> bucketARN) (\s@S3ContentLocation' {} a -> s {bucketARN = a} :: S3ContentLocation)++-- | The file key for the object containing the application code.+s3ContentLocation_fileKey :: Lens.Lens' S3ContentLocation Prelude.Text+s3ContentLocation_fileKey = Lens.lens (\S3ContentLocation' {fileKey} -> fileKey) (\s@S3ContentLocation' {} a -> s {fileKey = a} :: S3ContentLocation)++instance Data.FromJSON S3ContentLocation where+  parseJSON =+    Data.withObject+      "S3ContentLocation"+      ( \x ->+          S3ContentLocation'+            Prelude.<$> (x Data..:? "ObjectVersion")+            Prelude.<*> (x Data..: "BucketARN")+            Prelude.<*> (x Data..: "FileKey")+      )++instance Prelude.Hashable S3ContentLocation where+  hashWithSalt _salt S3ContentLocation' {..} =+    _salt+      `Prelude.hashWithSalt` objectVersion+      `Prelude.hashWithSalt` bucketARN+      `Prelude.hashWithSalt` fileKey++instance Prelude.NFData S3ContentLocation where+  rnf S3ContentLocation' {..} =+    Prelude.rnf objectVersion+      `Prelude.seq` Prelude.rnf bucketARN+      `Prelude.seq` Prelude.rnf fileKey++instance Data.ToJSON S3ContentLocation where+  toJSON S3ContentLocation' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("ObjectVersion" Data..=) Prelude.<$> objectVersion,+            Prelude.Just ("BucketARN" Data..= bucketARN),+            Prelude.Just ("FileKey" Data..= fileKey)+          ]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/S3ContentLocationUpdate.hs view
@@ -0,0 +1,102 @@+{-# 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.KinesisAnalyticsV2.Types.S3ContentLocationUpdate+-- 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.KinesisAnalyticsV2.Types.S3ContentLocationUpdate 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++-- | Describes an update for the Amazon S3 code content location for an+-- application.+--+-- /See:/ 'newS3ContentLocationUpdate' smart constructor.+data S3ContentLocationUpdate = S3ContentLocationUpdate'+  { -- | The new Amazon Resource Name (ARN) for the S3 bucket containing the+    -- application code.+    bucketARNUpdate :: Prelude.Maybe Prelude.Text,+    -- | The new file key for the object containing the application code.+    fileKeyUpdate :: Prelude.Maybe Prelude.Text,+    -- | The new version of the object containing the application code.+    objectVersionUpdate :: Prelude.Maybe Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'S3ContentLocationUpdate' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'bucketARNUpdate', 's3ContentLocationUpdate_bucketARNUpdate' - The new Amazon Resource Name (ARN) for the S3 bucket containing the+-- application code.+--+-- 'fileKeyUpdate', 's3ContentLocationUpdate_fileKeyUpdate' - The new file key for the object containing the application code.+--+-- 'objectVersionUpdate', 's3ContentLocationUpdate_objectVersionUpdate' - The new version of the object containing the application code.+newS3ContentLocationUpdate ::+  S3ContentLocationUpdate+newS3ContentLocationUpdate =+  S3ContentLocationUpdate'+    { bucketARNUpdate =+        Prelude.Nothing,+      fileKeyUpdate = Prelude.Nothing,+      objectVersionUpdate = Prelude.Nothing+    }++-- | The new Amazon Resource Name (ARN) for the S3 bucket containing the+-- application code.+s3ContentLocationUpdate_bucketARNUpdate :: Lens.Lens' S3ContentLocationUpdate (Prelude.Maybe Prelude.Text)+s3ContentLocationUpdate_bucketARNUpdate = Lens.lens (\S3ContentLocationUpdate' {bucketARNUpdate} -> bucketARNUpdate) (\s@S3ContentLocationUpdate' {} a -> s {bucketARNUpdate = a} :: S3ContentLocationUpdate)++-- | The new file key for the object containing the application code.+s3ContentLocationUpdate_fileKeyUpdate :: Lens.Lens' S3ContentLocationUpdate (Prelude.Maybe Prelude.Text)+s3ContentLocationUpdate_fileKeyUpdate = Lens.lens (\S3ContentLocationUpdate' {fileKeyUpdate} -> fileKeyUpdate) (\s@S3ContentLocationUpdate' {} a -> s {fileKeyUpdate = a} :: S3ContentLocationUpdate)++-- | The new version of the object containing the application code.+s3ContentLocationUpdate_objectVersionUpdate :: Lens.Lens' S3ContentLocationUpdate (Prelude.Maybe Prelude.Text)+s3ContentLocationUpdate_objectVersionUpdate = Lens.lens (\S3ContentLocationUpdate' {objectVersionUpdate} -> objectVersionUpdate) (\s@S3ContentLocationUpdate' {} a -> s {objectVersionUpdate = a} :: S3ContentLocationUpdate)++instance Prelude.Hashable S3ContentLocationUpdate where+  hashWithSalt _salt S3ContentLocationUpdate' {..} =+    _salt+      `Prelude.hashWithSalt` bucketARNUpdate+      `Prelude.hashWithSalt` fileKeyUpdate+      `Prelude.hashWithSalt` objectVersionUpdate++instance Prelude.NFData S3ContentLocationUpdate where+  rnf S3ContentLocationUpdate' {..} =+    Prelude.rnf bucketARNUpdate+      `Prelude.seq` Prelude.rnf fileKeyUpdate+      `Prelude.seq` Prelude.rnf objectVersionUpdate++instance Data.ToJSON S3ContentLocationUpdate where+  toJSON S3ContentLocationUpdate' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("BucketARNUpdate" Data..=)+              Prelude.<$> bucketARNUpdate,+            ("FileKeyUpdate" Data..=) Prelude.<$> fileKeyUpdate,+            ("ObjectVersionUpdate" Data..=)+              Prelude.<$> objectVersionUpdate+          ]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/S3ReferenceDataSource.hs view
@@ -0,0 +1,88 @@+{-# 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.KinesisAnalyticsV2.Types.S3ReferenceDataSource+-- 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.KinesisAnalyticsV2.Types.S3ReferenceDataSource 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++-- | For a SQL-based Kinesis Data Analytics application, identifies the+-- Amazon S3 bucket and object that contains the reference data.+--+-- A Kinesis Data Analytics application loads reference data only once. If+-- the data changes, you call the UpdateApplication operation to trigger+-- reloading of data into your application.+--+-- /See:/ 'newS3ReferenceDataSource' smart constructor.+data S3ReferenceDataSource = S3ReferenceDataSource'+  { -- | The Amazon Resource Name (ARN) of the S3 bucket.+    bucketARN :: Prelude.Maybe Prelude.Text,+    -- | The object key name containing the reference data.+    fileKey :: Prelude.Maybe Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'S3ReferenceDataSource' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'bucketARN', 's3ReferenceDataSource_bucketARN' - The Amazon Resource Name (ARN) of the S3 bucket.+--+-- 'fileKey', 's3ReferenceDataSource_fileKey' - The object key name containing the reference data.+newS3ReferenceDataSource ::+  S3ReferenceDataSource+newS3ReferenceDataSource =+  S3ReferenceDataSource'+    { bucketARN = Prelude.Nothing,+      fileKey = Prelude.Nothing+    }++-- | The Amazon Resource Name (ARN) of the S3 bucket.+s3ReferenceDataSource_bucketARN :: Lens.Lens' S3ReferenceDataSource (Prelude.Maybe Prelude.Text)+s3ReferenceDataSource_bucketARN = Lens.lens (\S3ReferenceDataSource' {bucketARN} -> bucketARN) (\s@S3ReferenceDataSource' {} a -> s {bucketARN = a} :: S3ReferenceDataSource)++-- | The object key name containing the reference data.+s3ReferenceDataSource_fileKey :: Lens.Lens' S3ReferenceDataSource (Prelude.Maybe Prelude.Text)+s3ReferenceDataSource_fileKey = Lens.lens (\S3ReferenceDataSource' {fileKey} -> fileKey) (\s@S3ReferenceDataSource' {} a -> s {fileKey = a} :: S3ReferenceDataSource)++instance Prelude.Hashable S3ReferenceDataSource where+  hashWithSalt _salt S3ReferenceDataSource' {..} =+    _salt+      `Prelude.hashWithSalt` bucketARN+      `Prelude.hashWithSalt` fileKey++instance Prelude.NFData S3ReferenceDataSource where+  rnf S3ReferenceDataSource' {..} =+    Prelude.rnf bucketARN+      `Prelude.seq` Prelude.rnf fileKey++instance Data.ToJSON S3ReferenceDataSource where+  toJSON S3ReferenceDataSource' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("BucketARN" Data..=) Prelude.<$> bucketARN,+            ("FileKey" Data..=) Prelude.<$> fileKey+          ]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/S3ReferenceDataSourceDescription.hs view
@@ -0,0 +1,133 @@+{-# 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.KinesisAnalyticsV2.Types.S3ReferenceDataSourceDescription+-- 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.KinesisAnalyticsV2.Types.S3ReferenceDataSourceDescription 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++-- | For a SQL-based Kinesis Data Analytics application, provides the bucket+-- name and object key name that stores the reference data.+--+-- /See:/ 'newS3ReferenceDataSourceDescription' smart constructor.+data S3ReferenceDataSourceDescription = S3ReferenceDataSourceDescription'+  { -- | The ARN of the IAM role that Kinesis Data Analytics can assume to read+    -- the Amazon S3 object on your behalf to populate the in-application+    -- reference table.+    --+    -- Provided for backward compatibility. Applications that are created with+    -- the current API version have an application-level service execution role+    -- rather than a resource-level role.+    referenceRoleARN :: Prelude.Maybe Prelude.Text,+    -- | The Amazon Resource Name (ARN) of the S3 bucket.+    bucketARN :: Prelude.Text,+    -- | Amazon S3 object key name.+    fileKey :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'S3ReferenceDataSourceDescription' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'referenceRoleARN', 's3ReferenceDataSourceDescription_referenceRoleARN' - The ARN of the IAM role that Kinesis Data Analytics can assume to read+-- the Amazon S3 object on your behalf to populate the in-application+-- reference table.+--+-- Provided for backward compatibility. Applications that are created with+-- the current API version have an application-level service execution role+-- rather than a resource-level role.+--+-- 'bucketARN', 's3ReferenceDataSourceDescription_bucketARN' - The Amazon Resource Name (ARN) of the S3 bucket.+--+-- 'fileKey', 's3ReferenceDataSourceDescription_fileKey' - Amazon S3 object key name.+newS3ReferenceDataSourceDescription ::+  -- | 'bucketARN'+  Prelude.Text ->+  -- | 'fileKey'+  Prelude.Text ->+  S3ReferenceDataSourceDescription+newS3ReferenceDataSourceDescription+  pBucketARN_+  pFileKey_ =+    S3ReferenceDataSourceDescription'+      { referenceRoleARN =+          Prelude.Nothing,+        bucketARN = pBucketARN_,+        fileKey = pFileKey_+      }++-- | The ARN of the IAM role that Kinesis Data Analytics can assume to read+-- the Amazon S3 object on your behalf to populate the in-application+-- reference table.+--+-- Provided for backward compatibility. Applications that are created with+-- the current API version have an application-level service execution role+-- rather than a resource-level role.+s3ReferenceDataSourceDescription_referenceRoleARN :: Lens.Lens' S3ReferenceDataSourceDescription (Prelude.Maybe Prelude.Text)+s3ReferenceDataSourceDescription_referenceRoleARN = Lens.lens (\S3ReferenceDataSourceDescription' {referenceRoleARN} -> referenceRoleARN) (\s@S3ReferenceDataSourceDescription' {} a -> s {referenceRoleARN = a} :: S3ReferenceDataSourceDescription)++-- | The Amazon Resource Name (ARN) of the S3 bucket.+s3ReferenceDataSourceDescription_bucketARN :: Lens.Lens' S3ReferenceDataSourceDescription Prelude.Text+s3ReferenceDataSourceDescription_bucketARN = Lens.lens (\S3ReferenceDataSourceDescription' {bucketARN} -> bucketARN) (\s@S3ReferenceDataSourceDescription' {} a -> s {bucketARN = a} :: S3ReferenceDataSourceDescription)++-- | Amazon S3 object key name.+s3ReferenceDataSourceDescription_fileKey :: Lens.Lens' S3ReferenceDataSourceDescription Prelude.Text+s3ReferenceDataSourceDescription_fileKey = Lens.lens (\S3ReferenceDataSourceDescription' {fileKey} -> fileKey) (\s@S3ReferenceDataSourceDescription' {} a -> s {fileKey = a} :: S3ReferenceDataSourceDescription)++instance+  Data.FromJSON+    S3ReferenceDataSourceDescription+  where+  parseJSON =+    Data.withObject+      "S3ReferenceDataSourceDescription"+      ( \x ->+          S3ReferenceDataSourceDescription'+            Prelude.<$> (x Data..:? "ReferenceRoleARN")+            Prelude.<*> (x Data..: "BucketARN")+            Prelude.<*> (x Data..: "FileKey")+      )++instance+  Prelude.Hashable+    S3ReferenceDataSourceDescription+  where+  hashWithSalt+    _salt+    S3ReferenceDataSourceDescription' {..} =+      _salt+        `Prelude.hashWithSalt` referenceRoleARN+        `Prelude.hashWithSalt` bucketARN+        `Prelude.hashWithSalt` fileKey++instance+  Prelude.NFData+    S3ReferenceDataSourceDescription+  where+  rnf S3ReferenceDataSourceDescription' {..} =+    Prelude.rnf referenceRoleARN+      `Prelude.seq` Prelude.rnf bucketARN+      `Prelude.seq` Prelude.rnf fileKey
+ gen/Amazonka/KinesisAnalyticsV2/Types/S3ReferenceDataSourceUpdate.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.KinesisAnalyticsV2.Types.S3ReferenceDataSourceUpdate+-- 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.KinesisAnalyticsV2.Types.S3ReferenceDataSourceUpdate 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++-- | For a SQL-based Kinesis Data Analytics application, describes the Amazon+-- S3 bucket name and object key name for an in-application reference+-- table.+--+-- /See:/ 'newS3ReferenceDataSourceUpdate' smart constructor.+data S3ReferenceDataSourceUpdate = S3ReferenceDataSourceUpdate'+  { -- | The Amazon Resource Name (ARN) of the S3 bucket.+    bucketARNUpdate :: Prelude.Maybe Prelude.Text,+    -- | The object key name.+    fileKeyUpdate :: Prelude.Maybe Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'S3ReferenceDataSourceUpdate' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'bucketARNUpdate', 's3ReferenceDataSourceUpdate_bucketARNUpdate' - The Amazon Resource Name (ARN) of the S3 bucket.+--+-- 'fileKeyUpdate', 's3ReferenceDataSourceUpdate_fileKeyUpdate' - The object key name.+newS3ReferenceDataSourceUpdate ::+  S3ReferenceDataSourceUpdate+newS3ReferenceDataSourceUpdate =+  S3ReferenceDataSourceUpdate'+    { bucketARNUpdate =+        Prelude.Nothing,+      fileKeyUpdate = Prelude.Nothing+    }++-- | The Amazon Resource Name (ARN) of the S3 bucket.+s3ReferenceDataSourceUpdate_bucketARNUpdate :: Lens.Lens' S3ReferenceDataSourceUpdate (Prelude.Maybe Prelude.Text)+s3ReferenceDataSourceUpdate_bucketARNUpdate = Lens.lens (\S3ReferenceDataSourceUpdate' {bucketARNUpdate} -> bucketARNUpdate) (\s@S3ReferenceDataSourceUpdate' {} a -> s {bucketARNUpdate = a} :: S3ReferenceDataSourceUpdate)++-- | The object key name.+s3ReferenceDataSourceUpdate_fileKeyUpdate :: Lens.Lens' S3ReferenceDataSourceUpdate (Prelude.Maybe Prelude.Text)+s3ReferenceDataSourceUpdate_fileKeyUpdate = Lens.lens (\S3ReferenceDataSourceUpdate' {fileKeyUpdate} -> fileKeyUpdate) (\s@S3ReferenceDataSourceUpdate' {} a -> s {fileKeyUpdate = a} :: S3ReferenceDataSourceUpdate)++instance Prelude.Hashable S3ReferenceDataSourceUpdate where+  hashWithSalt _salt S3ReferenceDataSourceUpdate' {..} =+    _salt+      `Prelude.hashWithSalt` bucketARNUpdate+      `Prelude.hashWithSalt` fileKeyUpdate++instance Prelude.NFData S3ReferenceDataSourceUpdate where+  rnf S3ReferenceDataSourceUpdate' {..} =+    Prelude.rnf bucketARNUpdate+      `Prelude.seq` Prelude.rnf fileKeyUpdate++instance Data.ToJSON S3ReferenceDataSourceUpdate where+  toJSON S3ReferenceDataSourceUpdate' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("BucketARNUpdate" Data..=)+              Prelude.<$> bucketARNUpdate,+            ("FileKeyUpdate" Data..=) Prelude.<$> fileKeyUpdate+          ]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/SnapshotDetails.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.KinesisAnalyticsV2.Types.SnapshotDetails+-- 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.KinesisAnalyticsV2.Types.SnapshotDetails where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types.SnapshotStatus+import qualified Amazonka.Prelude as Prelude++-- | Provides details about a snapshot of application state.+--+-- /See:/ 'newSnapshotDetails' smart constructor.+data SnapshotDetails = SnapshotDetails'+  { -- | The timestamp of the application snapshot.+    snapshotCreationTimestamp :: Prelude.Maybe Data.POSIX,+    -- | The identifier for the application snapshot.+    snapshotName :: Prelude.Text,+    -- | The status of the application snapshot.+    snapshotStatus :: SnapshotStatus,+    -- | The current application version ID when the snapshot was created.+    applicationVersionId :: Prelude.Natural+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'SnapshotDetails' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'snapshotCreationTimestamp', 'snapshotDetails_snapshotCreationTimestamp' - The timestamp of the application snapshot.+--+-- 'snapshotName', 'snapshotDetails_snapshotName' - The identifier for the application snapshot.+--+-- 'snapshotStatus', 'snapshotDetails_snapshotStatus' - The status of the application snapshot.+--+-- 'applicationVersionId', 'snapshotDetails_applicationVersionId' - The current application version ID when the snapshot was created.+newSnapshotDetails ::+  -- | 'snapshotName'+  Prelude.Text ->+  -- | 'snapshotStatus'+  SnapshotStatus ->+  -- | 'applicationVersionId'+  Prelude.Natural ->+  SnapshotDetails+newSnapshotDetails+  pSnapshotName_+  pSnapshotStatus_+  pApplicationVersionId_ =+    SnapshotDetails'+      { snapshotCreationTimestamp =+          Prelude.Nothing,+        snapshotName = pSnapshotName_,+        snapshotStatus = pSnapshotStatus_,+        applicationVersionId = pApplicationVersionId_+      }++-- | The timestamp of the application snapshot.+snapshotDetails_snapshotCreationTimestamp :: Lens.Lens' SnapshotDetails (Prelude.Maybe Prelude.UTCTime)+snapshotDetails_snapshotCreationTimestamp = Lens.lens (\SnapshotDetails' {snapshotCreationTimestamp} -> snapshotCreationTimestamp) (\s@SnapshotDetails' {} a -> s {snapshotCreationTimestamp = a} :: SnapshotDetails) Prelude.. Lens.mapping Data._Time++-- | The identifier for the application snapshot.+snapshotDetails_snapshotName :: Lens.Lens' SnapshotDetails Prelude.Text+snapshotDetails_snapshotName = Lens.lens (\SnapshotDetails' {snapshotName} -> snapshotName) (\s@SnapshotDetails' {} a -> s {snapshotName = a} :: SnapshotDetails)++-- | The status of the application snapshot.+snapshotDetails_snapshotStatus :: Lens.Lens' SnapshotDetails SnapshotStatus+snapshotDetails_snapshotStatus = Lens.lens (\SnapshotDetails' {snapshotStatus} -> snapshotStatus) (\s@SnapshotDetails' {} a -> s {snapshotStatus = a} :: SnapshotDetails)++-- | The current application version ID when the snapshot was created.+snapshotDetails_applicationVersionId :: Lens.Lens' SnapshotDetails Prelude.Natural+snapshotDetails_applicationVersionId = Lens.lens (\SnapshotDetails' {applicationVersionId} -> applicationVersionId) (\s@SnapshotDetails' {} a -> s {applicationVersionId = a} :: SnapshotDetails)++instance Data.FromJSON SnapshotDetails where+  parseJSON =+    Data.withObject+      "SnapshotDetails"+      ( \x ->+          SnapshotDetails'+            Prelude.<$> (x Data..:? "SnapshotCreationTimestamp")+            Prelude.<*> (x Data..: "SnapshotName")+            Prelude.<*> (x Data..: "SnapshotStatus")+            Prelude.<*> (x Data..: "ApplicationVersionId")+      )++instance Prelude.Hashable SnapshotDetails where+  hashWithSalt _salt SnapshotDetails' {..} =+    _salt+      `Prelude.hashWithSalt` snapshotCreationTimestamp+      `Prelude.hashWithSalt` snapshotName+      `Prelude.hashWithSalt` snapshotStatus+      `Prelude.hashWithSalt` applicationVersionId++instance Prelude.NFData SnapshotDetails where+  rnf SnapshotDetails' {..} =+    Prelude.rnf snapshotCreationTimestamp+      `Prelude.seq` Prelude.rnf snapshotName+      `Prelude.seq` Prelude.rnf snapshotStatus+      `Prelude.seq` Prelude.rnf applicationVersionId
+ gen/Amazonka/KinesisAnalyticsV2/Types/SnapshotStatus.hs view
@@ -0,0 +1,81 @@+{-# 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.KinesisAnalyticsV2.Types.SnapshotStatus+-- 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.KinesisAnalyticsV2.Types.SnapshotStatus+  ( SnapshotStatus+      ( ..,+        SnapshotStatus_CREATING,+        SnapshotStatus_DELETING,+        SnapshotStatus_FAILED,+        SnapshotStatus_READY+      ),+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype SnapshotStatus = SnapshotStatus'+  { fromSnapshotStatus ::+      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 SnapshotStatus_CREATING :: SnapshotStatus+pattern SnapshotStatus_CREATING = SnapshotStatus' "CREATING"++pattern SnapshotStatus_DELETING :: SnapshotStatus+pattern SnapshotStatus_DELETING = SnapshotStatus' "DELETING"++pattern SnapshotStatus_FAILED :: SnapshotStatus+pattern SnapshotStatus_FAILED = SnapshotStatus' "FAILED"++pattern SnapshotStatus_READY :: SnapshotStatus+pattern SnapshotStatus_READY = SnapshotStatus' "READY"++{-# COMPLETE+  SnapshotStatus_CREATING,+  SnapshotStatus_DELETING,+  SnapshotStatus_FAILED,+  SnapshotStatus_READY,+  SnapshotStatus'+  #-}
+ gen/Amazonka/KinesisAnalyticsV2/Types/SourceSchema.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.KinesisAnalyticsV2.Types.SourceSchema+-- 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.KinesisAnalyticsV2.Types.SourceSchema where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types.RecordColumn+import Amazonka.KinesisAnalyticsV2.Types.RecordFormat+import qualified Amazonka.Prelude as Prelude++-- | For a SQL-based Kinesis Data Analytics application, describes the format+-- of the data in the streaming source, and how each data element maps to+-- corresponding columns created in the in-application stream.+--+-- /See:/ 'newSourceSchema' smart constructor.+data SourceSchema = SourceSchema'+  { -- | Specifies the encoding of the records in the streaming source. For+    -- example, UTF-8.+    recordEncoding :: Prelude.Maybe Prelude.Text,+    -- | Specifies the format of the records on the streaming source.+    recordFormat :: RecordFormat,+    -- | A list of @RecordColumn@ objects.+    recordColumns :: Prelude.NonEmpty RecordColumn+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'SourceSchema' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'recordEncoding', 'sourceSchema_recordEncoding' - Specifies the encoding of the records in the streaming source. For+-- example, UTF-8.+--+-- 'recordFormat', 'sourceSchema_recordFormat' - Specifies the format of the records on the streaming source.+--+-- 'recordColumns', 'sourceSchema_recordColumns' - A list of @RecordColumn@ objects.+newSourceSchema ::+  -- | 'recordFormat'+  RecordFormat ->+  -- | 'recordColumns'+  Prelude.NonEmpty RecordColumn ->+  SourceSchema+newSourceSchema pRecordFormat_ pRecordColumns_ =+  SourceSchema'+    { recordEncoding = Prelude.Nothing,+      recordFormat = pRecordFormat_,+      recordColumns = Lens.coerced Lens.# pRecordColumns_+    }++-- | Specifies the encoding of the records in the streaming source. For+-- example, UTF-8.+sourceSchema_recordEncoding :: Lens.Lens' SourceSchema (Prelude.Maybe Prelude.Text)+sourceSchema_recordEncoding = Lens.lens (\SourceSchema' {recordEncoding} -> recordEncoding) (\s@SourceSchema' {} a -> s {recordEncoding = a} :: SourceSchema)++-- | Specifies the format of the records on the streaming source.+sourceSchema_recordFormat :: Lens.Lens' SourceSchema RecordFormat+sourceSchema_recordFormat = Lens.lens (\SourceSchema' {recordFormat} -> recordFormat) (\s@SourceSchema' {} a -> s {recordFormat = a} :: SourceSchema)++-- | A list of @RecordColumn@ objects.+sourceSchema_recordColumns :: Lens.Lens' SourceSchema (Prelude.NonEmpty RecordColumn)+sourceSchema_recordColumns = Lens.lens (\SourceSchema' {recordColumns} -> recordColumns) (\s@SourceSchema' {} a -> s {recordColumns = a} :: SourceSchema) Prelude.. Lens.coerced++instance Data.FromJSON SourceSchema where+  parseJSON =+    Data.withObject+      "SourceSchema"+      ( \x ->+          SourceSchema'+            Prelude.<$> (x Data..:? "RecordEncoding")+            Prelude.<*> (x Data..: "RecordFormat")+            Prelude.<*> (x Data..: "RecordColumns")+      )++instance Prelude.Hashable SourceSchema where+  hashWithSalt _salt SourceSchema' {..} =+    _salt+      `Prelude.hashWithSalt` recordEncoding+      `Prelude.hashWithSalt` recordFormat+      `Prelude.hashWithSalt` recordColumns++instance Prelude.NFData SourceSchema where+  rnf SourceSchema' {..} =+    Prelude.rnf recordEncoding+      `Prelude.seq` Prelude.rnf recordFormat+      `Prelude.seq` Prelude.rnf recordColumns++instance Data.ToJSON SourceSchema where+  toJSON SourceSchema' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("RecordEncoding" Data..=)+              Prelude.<$> recordEncoding,+            Prelude.Just ("RecordFormat" Data..= recordFormat),+            Prelude.Just+              ("RecordColumns" Data..= recordColumns)+          ]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/SqlApplicationConfiguration.hs view
@@ -0,0 +1,110 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.KinesisAnalyticsV2.Types.SqlApplicationConfiguration+-- 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.KinesisAnalyticsV2.Types.SqlApplicationConfiguration where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types.Input+import Amazonka.KinesisAnalyticsV2.Types.Output+import Amazonka.KinesisAnalyticsV2.Types.ReferenceDataSource+import qualified Amazonka.Prelude as Prelude++-- | Describes the inputs, outputs, and reference data sources for a+-- SQL-based Kinesis Data Analytics application.+--+-- /See:/ 'newSqlApplicationConfiguration' smart constructor.+data SqlApplicationConfiguration = SqlApplicationConfiguration'+  { -- | The array of Input objects describing the input streams used by the+    -- application.+    inputs :: Prelude.Maybe [Input],+    -- | The array of Output objects describing the destination streams used by+    -- the application.+    outputs :: Prelude.Maybe [Output],+    -- | The array of ReferenceDataSource objects describing the reference data+    -- sources used by the application.+    referenceDataSources :: Prelude.Maybe [ReferenceDataSource]+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'SqlApplicationConfiguration' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'inputs', 'sqlApplicationConfiguration_inputs' - The array of Input objects describing the input streams used by the+-- application.+--+-- 'outputs', 'sqlApplicationConfiguration_outputs' - The array of Output objects describing the destination streams used by+-- the application.+--+-- 'referenceDataSources', 'sqlApplicationConfiguration_referenceDataSources' - The array of ReferenceDataSource objects describing the reference data+-- sources used by the application.+newSqlApplicationConfiguration ::+  SqlApplicationConfiguration+newSqlApplicationConfiguration =+  SqlApplicationConfiguration'+    { inputs =+        Prelude.Nothing,+      outputs = Prelude.Nothing,+      referenceDataSources = Prelude.Nothing+    }++-- | The array of Input objects describing the input streams used by the+-- application.+sqlApplicationConfiguration_inputs :: Lens.Lens' SqlApplicationConfiguration (Prelude.Maybe [Input])+sqlApplicationConfiguration_inputs = Lens.lens (\SqlApplicationConfiguration' {inputs} -> inputs) (\s@SqlApplicationConfiguration' {} a -> s {inputs = a} :: SqlApplicationConfiguration) Prelude.. Lens.mapping Lens.coerced++-- | The array of Output objects describing the destination streams used by+-- the application.+sqlApplicationConfiguration_outputs :: Lens.Lens' SqlApplicationConfiguration (Prelude.Maybe [Output])+sqlApplicationConfiguration_outputs = Lens.lens (\SqlApplicationConfiguration' {outputs} -> outputs) (\s@SqlApplicationConfiguration' {} a -> s {outputs = a} :: SqlApplicationConfiguration) Prelude.. Lens.mapping Lens.coerced++-- | The array of ReferenceDataSource objects describing the reference data+-- sources used by the application.+sqlApplicationConfiguration_referenceDataSources :: Lens.Lens' SqlApplicationConfiguration (Prelude.Maybe [ReferenceDataSource])+sqlApplicationConfiguration_referenceDataSources = Lens.lens (\SqlApplicationConfiguration' {referenceDataSources} -> referenceDataSources) (\s@SqlApplicationConfiguration' {} a -> s {referenceDataSources = a} :: SqlApplicationConfiguration) Prelude.. Lens.mapping Lens.coerced++instance Prelude.Hashable SqlApplicationConfiguration where+  hashWithSalt _salt SqlApplicationConfiguration' {..} =+    _salt+      `Prelude.hashWithSalt` inputs+      `Prelude.hashWithSalt` outputs+      `Prelude.hashWithSalt` referenceDataSources++instance Prelude.NFData SqlApplicationConfiguration where+  rnf SqlApplicationConfiguration' {..} =+    Prelude.rnf inputs+      `Prelude.seq` Prelude.rnf outputs+      `Prelude.seq` Prelude.rnf referenceDataSources++instance Data.ToJSON SqlApplicationConfiguration where+  toJSON SqlApplicationConfiguration' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("Inputs" Data..=) Prelude.<$> inputs,+            ("Outputs" Data..=) Prelude.<$> outputs,+            ("ReferenceDataSources" Data..=)+              Prelude.<$> referenceDataSources+          ]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/SqlApplicationConfigurationDescription.hs view
@@ -0,0 +1,132 @@+{-# 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.KinesisAnalyticsV2.Types.SqlApplicationConfigurationDescription+-- 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.KinesisAnalyticsV2.Types.SqlApplicationConfigurationDescription where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types.InputDescription+import Amazonka.KinesisAnalyticsV2.Types.OutputDescription+import Amazonka.KinesisAnalyticsV2.Types.ReferenceDataSourceDescription+import qualified Amazonka.Prelude as Prelude++-- | Describes the inputs, outputs, and reference data sources for a+-- SQL-based Kinesis Data Analytics application.+--+-- /See:/ 'newSqlApplicationConfigurationDescription' smart constructor.+data SqlApplicationConfigurationDescription = SqlApplicationConfigurationDescription'+  { -- | The array of InputDescription objects describing the input streams used+    -- by the application.+    inputDescriptions :: Prelude.Maybe [InputDescription],+    -- | The array of OutputDescription objects describing the destination+    -- streams used by the application.+    outputDescriptions :: Prelude.Maybe [OutputDescription],+    -- | The array of ReferenceDataSourceDescription objects describing the+    -- reference data sources used by the application.+    referenceDataSourceDescriptions :: Prelude.Maybe [ReferenceDataSourceDescription]+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'SqlApplicationConfigurationDescription' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'inputDescriptions', 'sqlApplicationConfigurationDescription_inputDescriptions' - The array of InputDescription objects describing the input streams used+-- by the application.+--+-- 'outputDescriptions', 'sqlApplicationConfigurationDescription_outputDescriptions' - The array of OutputDescription objects describing the destination+-- streams used by the application.+--+-- 'referenceDataSourceDescriptions', 'sqlApplicationConfigurationDescription_referenceDataSourceDescriptions' - The array of ReferenceDataSourceDescription objects describing the+-- reference data sources used by the application.+newSqlApplicationConfigurationDescription ::+  SqlApplicationConfigurationDescription+newSqlApplicationConfigurationDescription =+  SqlApplicationConfigurationDescription'+    { inputDescriptions =+        Prelude.Nothing,+      outputDescriptions =+        Prelude.Nothing,+      referenceDataSourceDescriptions =+        Prelude.Nothing+    }++-- | The array of InputDescription objects describing the input streams used+-- by the application.+sqlApplicationConfigurationDescription_inputDescriptions :: Lens.Lens' SqlApplicationConfigurationDescription (Prelude.Maybe [InputDescription])+sqlApplicationConfigurationDescription_inputDescriptions = Lens.lens (\SqlApplicationConfigurationDescription' {inputDescriptions} -> inputDescriptions) (\s@SqlApplicationConfigurationDescription' {} a -> s {inputDescriptions = a} :: SqlApplicationConfigurationDescription) Prelude.. Lens.mapping Lens.coerced++-- | The array of OutputDescription objects describing the destination+-- streams used by the application.+sqlApplicationConfigurationDescription_outputDescriptions :: Lens.Lens' SqlApplicationConfigurationDescription (Prelude.Maybe [OutputDescription])+sqlApplicationConfigurationDescription_outputDescriptions = Lens.lens (\SqlApplicationConfigurationDescription' {outputDescriptions} -> outputDescriptions) (\s@SqlApplicationConfigurationDescription' {} a -> s {outputDescriptions = a} :: SqlApplicationConfigurationDescription) Prelude.. Lens.mapping Lens.coerced++-- | The array of ReferenceDataSourceDescription objects describing the+-- reference data sources used by the application.+sqlApplicationConfigurationDescription_referenceDataSourceDescriptions :: Lens.Lens' SqlApplicationConfigurationDescription (Prelude.Maybe [ReferenceDataSourceDescription])+sqlApplicationConfigurationDescription_referenceDataSourceDescriptions = Lens.lens (\SqlApplicationConfigurationDescription' {referenceDataSourceDescriptions} -> referenceDataSourceDescriptions) (\s@SqlApplicationConfigurationDescription' {} a -> s {referenceDataSourceDescriptions = a} :: SqlApplicationConfigurationDescription) Prelude.. Lens.mapping Lens.coerced++instance+  Data.FromJSON+    SqlApplicationConfigurationDescription+  where+  parseJSON =+    Data.withObject+      "SqlApplicationConfigurationDescription"+      ( \x ->+          SqlApplicationConfigurationDescription'+            Prelude.<$> ( x+                            Data..:? "InputDescriptions"+                            Data..!= Prelude.mempty+                        )+            Prelude.<*> ( x+                            Data..:? "OutputDescriptions"+                            Data..!= Prelude.mempty+                        )+            Prelude.<*> ( x+                            Data..:? "ReferenceDataSourceDescriptions"+                            Data..!= Prelude.mempty+                        )+      )++instance+  Prelude.Hashable+    SqlApplicationConfigurationDescription+  where+  hashWithSalt+    _salt+    SqlApplicationConfigurationDescription' {..} =+      _salt+        `Prelude.hashWithSalt` inputDescriptions+        `Prelude.hashWithSalt` outputDescriptions+        `Prelude.hashWithSalt` referenceDataSourceDescriptions++instance+  Prelude.NFData+    SqlApplicationConfigurationDescription+  where+  rnf SqlApplicationConfigurationDescription' {..} =+    Prelude.rnf inputDescriptions+      `Prelude.seq` Prelude.rnf outputDescriptions+      `Prelude.seq` Prelude.rnf referenceDataSourceDescriptions
+ gen/Amazonka/KinesisAnalyticsV2/Types/SqlApplicationConfigurationUpdate.hs view
@@ -0,0 +1,123 @@+{-# 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.KinesisAnalyticsV2.Types.SqlApplicationConfigurationUpdate+-- 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.KinesisAnalyticsV2.Types.SqlApplicationConfigurationUpdate where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types.InputUpdate+import Amazonka.KinesisAnalyticsV2.Types.OutputUpdate+import Amazonka.KinesisAnalyticsV2.Types.ReferenceDataSourceUpdate+import qualified Amazonka.Prelude as Prelude++-- | Describes updates to the input streams, destination streams, and+-- reference data sources for a SQL-based Kinesis Data Analytics+-- application.+--+-- /See:/ 'newSqlApplicationConfigurationUpdate' smart constructor.+data SqlApplicationConfigurationUpdate = SqlApplicationConfigurationUpdate'+  { -- | The array of InputUpdate objects describing the new input streams used+    -- by the application.+    inputUpdates :: Prelude.Maybe [InputUpdate],+    -- | The array of OutputUpdate objects describing the new destination streams+    -- used by the application.+    outputUpdates :: Prelude.Maybe [OutputUpdate],+    -- | The array of ReferenceDataSourceUpdate objects describing the new+    -- reference data sources used by the application.+    referenceDataSourceUpdates :: Prelude.Maybe [ReferenceDataSourceUpdate]+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'SqlApplicationConfigurationUpdate' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'inputUpdates', 'sqlApplicationConfigurationUpdate_inputUpdates' - The array of InputUpdate objects describing the new input streams used+-- by the application.+--+-- 'outputUpdates', 'sqlApplicationConfigurationUpdate_outputUpdates' - The array of OutputUpdate objects describing the new destination streams+-- used by the application.+--+-- 'referenceDataSourceUpdates', 'sqlApplicationConfigurationUpdate_referenceDataSourceUpdates' - The array of ReferenceDataSourceUpdate objects describing the new+-- reference data sources used by the application.+newSqlApplicationConfigurationUpdate ::+  SqlApplicationConfigurationUpdate+newSqlApplicationConfigurationUpdate =+  SqlApplicationConfigurationUpdate'+    { inputUpdates =+        Prelude.Nothing,+      outputUpdates = Prelude.Nothing,+      referenceDataSourceUpdates =+        Prelude.Nothing+    }++-- | The array of InputUpdate objects describing the new input streams used+-- by the application.+sqlApplicationConfigurationUpdate_inputUpdates :: Lens.Lens' SqlApplicationConfigurationUpdate (Prelude.Maybe [InputUpdate])+sqlApplicationConfigurationUpdate_inputUpdates = Lens.lens (\SqlApplicationConfigurationUpdate' {inputUpdates} -> inputUpdates) (\s@SqlApplicationConfigurationUpdate' {} a -> s {inputUpdates = a} :: SqlApplicationConfigurationUpdate) Prelude.. Lens.mapping Lens.coerced++-- | The array of OutputUpdate objects describing the new destination streams+-- used by the application.+sqlApplicationConfigurationUpdate_outputUpdates :: Lens.Lens' SqlApplicationConfigurationUpdate (Prelude.Maybe [OutputUpdate])+sqlApplicationConfigurationUpdate_outputUpdates = Lens.lens (\SqlApplicationConfigurationUpdate' {outputUpdates} -> outputUpdates) (\s@SqlApplicationConfigurationUpdate' {} a -> s {outputUpdates = a} :: SqlApplicationConfigurationUpdate) Prelude.. Lens.mapping Lens.coerced++-- | The array of ReferenceDataSourceUpdate objects describing the new+-- reference data sources used by the application.+sqlApplicationConfigurationUpdate_referenceDataSourceUpdates :: Lens.Lens' SqlApplicationConfigurationUpdate (Prelude.Maybe [ReferenceDataSourceUpdate])+sqlApplicationConfigurationUpdate_referenceDataSourceUpdates = Lens.lens (\SqlApplicationConfigurationUpdate' {referenceDataSourceUpdates} -> referenceDataSourceUpdates) (\s@SqlApplicationConfigurationUpdate' {} a -> s {referenceDataSourceUpdates = a} :: SqlApplicationConfigurationUpdate) Prelude.. Lens.mapping Lens.coerced++instance+  Prelude.Hashable+    SqlApplicationConfigurationUpdate+  where+  hashWithSalt+    _salt+    SqlApplicationConfigurationUpdate' {..} =+      _salt+        `Prelude.hashWithSalt` inputUpdates+        `Prelude.hashWithSalt` outputUpdates+        `Prelude.hashWithSalt` referenceDataSourceUpdates++instance+  Prelude.NFData+    SqlApplicationConfigurationUpdate+  where+  rnf SqlApplicationConfigurationUpdate' {..} =+    Prelude.rnf inputUpdates+      `Prelude.seq` Prelude.rnf outputUpdates+      `Prelude.seq` Prelude.rnf referenceDataSourceUpdates++instance+  Data.ToJSON+    SqlApplicationConfigurationUpdate+  where+  toJSON SqlApplicationConfigurationUpdate' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("InputUpdates" Data..=) Prelude.<$> inputUpdates,+            ("OutputUpdates" Data..=) Prelude.<$> outputUpdates,+            ("ReferenceDataSourceUpdates" Data..=)+              Prelude.<$> referenceDataSourceUpdates+          ]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/SqlRunConfiguration.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.KinesisAnalyticsV2.Types.SqlRunConfiguration+-- 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.KinesisAnalyticsV2.Types.SqlRunConfiguration where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types.InputStartingPositionConfiguration+import qualified Amazonka.Prelude as Prelude++-- | Describes the starting parameters for a SQL-based Kinesis Data Analytics+-- application.+--+-- /See:/ 'newSqlRunConfiguration' smart constructor.+data SqlRunConfiguration = SqlRunConfiguration'+  { -- | The input source ID. You can get this ID by calling the+    -- DescribeApplication operation.+    inputId :: Prelude.Text,+    -- | The point at which you want the application to start processing records+    -- from the streaming source.+    inputStartingPositionConfiguration :: InputStartingPositionConfiguration+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'SqlRunConfiguration' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'inputId', 'sqlRunConfiguration_inputId' - The input source ID. You can get this ID by calling the+-- DescribeApplication operation.+--+-- 'inputStartingPositionConfiguration', 'sqlRunConfiguration_inputStartingPositionConfiguration' - The point at which you want the application to start processing records+-- from the streaming source.+newSqlRunConfiguration ::+  -- | 'inputId'+  Prelude.Text ->+  -- | 'inputStartingPositionConfiguration'+  InputStartingPositionConfiguration ->+  SqlRunConfiguration+newSqlRunConfiguration+  pInputId_+  pInputStartingPositionConfiguration_ =+    SqlRunConfiguration'+      { inputId = pInputId_,+        inputStartingPositionConfiguration =+          pInputStartingPositionConfiguration_+      }++-- | The input source ID. You can get this ID by calling the+-- DescribeApplication operation.+sqlRunConfiguration_inputId :: Lens.Lens' SqlRunConfiguration Prelude.Text+sqlRunConfiguration_inputId = Lens.lens (\SqlRunConfiguration' {inputId} -> inputId) (\s@SqlRunConfiguration' {} a -> s {inputId = a} :: SqlRunConfiguration)++-- | The point at which you want the application to start processing records+-- from the streaming source.+sqlRunConfiguration_inputStartingPositionConfiguration :: Lens.Lens' SqlRunConfiguration InputStartingPositionConfiguration+sqlRunConfiguration_inputStartingPositionConfiguration = Lens.lens (\SqlRunConfiguration' {inputStartingPositionConfiguration} -> inputStartingPositionConfiguration) (\s@SqlRunConfiguration' {} a -> s {inputStartingPositionConfiguration = a} :: SqlRunConfiguration)++instance Prelude.Hashable SqlRunConfiguration where+  hashWithSalt _salt SqlRunConfiguration' {..} =+    _salt+      `Prelude.hashWithSalt` inputId+      `Prelude.hashWithSalt` inputStartingPositionConfiguration++instance Prelude.NFData SqlRunConfiguration where+  rnf SqlRunConfiguration' {..} =+    Prelude.rnf inputId+      `Prelude.seq` Prelude.rnf inputStartingPositionConfiguration++instance Data.ToJSON SqlRunConfiguration where+  toJSON SqlRunConfiguration' {..} =+    Data.object+      ( Prelude.catMaybes+          [ Prelude.Just ("InputId" Data..= inputId),+            Prelude.Just+              ( "InputStartingPositionConfiguration"+                  Data..= inputStartingPositionConfiguration+              )+          ]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/Tag.hs view
@@ -0,0 +1,97 @@+{-# 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.KinesisAnalyticsV2.Types.Tag+-- 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.KinesisAnalyticsV2.Types.Tag 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 key-value pair (the value is optional) that you can define and assign+-- to Amazon resources. If you specify a tag that already exists, the tag+-- value is replaced with the value that you specify in the request. Note+-- that the maximum number of application tags includes system tags. The+-- maximum number of user-defined application tags is 50. For more+-- information, see+-- <https://docs.aws.amazon.com/kinesisanalytics/latest/java/how-tagging.html Using Tagging>.+--+-- /See:/ 'newTag' smart constructor.+data Tag = Tag'+  { -- | The value of the key-value tag. The value is optional.+    value :: Prelude.Maybe Prelude.Text,+    -- | The key of the key-value tag.+    key :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'Tag' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'value', 'tag_value' - The value of the key-value tag. The value is optional.+--+-- 'key', 'tag_key' - The key of the key-value tag.+newTag ::+  -- | 'key'+  Prelude.Text ->+  Tag+newTag pKey_ =+  Tag' {value = Prelude.Nothing, key = pKey_}++-- | The value of the key-value tag. The value is optional.+tag_value :: Lens.Lens' Tag (Prelude.Maybe Prelude.Text)+tag_value = Lens.lens (\Tag' {value} -> value) (\s@Tag' {} a -> s {value = a} :: Tag)++-- | The key of the key-value tag.+tag_key :: Lens.Lens' Tag Prelude.Text+tag_key = Lens.lens (\Tag' {key} -> key) (\s@Tag' {} a -> s {key = a} :: Tag)++instance Data.FromJSON Tag where+  parseJSON =+    Data.withObject+      "Tag"+      ( \x ->+          Tag'+            Prelude.<$> (x Data..:? "Value")+            Prelude.<*> (x Data..: "Key")+      )++instance Prelude.Hashable Tag where+  hashWithSalt _salt Tag' {..} =+    _salt+      `Prelude.hashWithSalt` value+      `Prelude.hashWithSalt` key++instance Prelude.NFData Tag where+  rnf Tag' {..} =+    Prelude.rnf value `Prelude.seq` Prelude.rnf key++instance Data.ToJSON Tag where+  toJSON Tag' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("Value" Data..=) Prelude.<$> value,+            Prelude.Just ("Key" Data..= key)+          ]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/UrlType.hs view
@@ -0,0 +1,68 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.KinesisAnalyticsV2.Types.UrlType+-- 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.KinesisAnalyticsV2.Types.UrlType+  ( UrlType+      ( ..,+        UrlType_FLINK_DASHBOARD_URL,+        UrlType_ZEPPELIN_UI_URL+      ),+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype UrlType = UrlType' {fromUrlType :: 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 UrlType_FLINK_DASHBOARD_URL :: UrlType+pattern UrlType_FLINK_DASHBOARD_URL = UrlType' "FLINK_DASHBOARD_URL"++pattern UrlType_ZEPPELIN_UI_URL :: UrlType+pattern UrlType_ZEPPELIN_UI_URL = UrlType' "ZEPPELIN_UI_URL"++{-# COMPLETE+  UrlType_FLINK_DASHBOARD_URL,+  UrlType_ZEPPELIN_UI_URL,+  UrlType'+  #-}
+ gen/Amazonka/KinesisAnalyticsV2/Types/VpcConfiguration.hs view
@@ -0,0 +1,102 @@+{-# 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.KinesisAnalyticsV2.Types.VpcConfiguration+-- 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.KinesisAnalyticsV2.Types.VpcConfiguration 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++-- | Describes the parameters of a VPC used by the application.+--+-- /See:/ 'newVpcConfiguration' smart constructor.+data VpcConfiguration = VpcConfiguration'+  { -- | The array of+    -- <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_Subnet.html Subnet>+    -- IDs used by the VPC configuration.+    subnetIds :: Prelude.NonEmpty Prelude.Text,+    -- | The array of+    -- <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_SecurityGroup.html SecurityGroup>+    -- IDs used by the VPC configuration.+    securityGroupIds :: Prelude.NonEmpty Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'VpcConfiguration' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'subnetIds', 'vpcConfiguration_subnetIds' - The array of+-- <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_Subnet.html Subnet>+-- IDs used by the VPC configuration.+--+-- 'securityGroupIds', 'vpcConfiguration_securityGroupIds' - The array of+-- <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_SecurityGroup.html SecurityGroup>+-- IDs used by the VPC configuration.+newVpcConfiguration ::+  -- | 'subnetIds'+  Prelude.NonEmpty Prelude.Text ->+  -- | 'securityGroupIds'+  Prelude.NonEmpty Prelude.Text ->+  VpcConfiguration+newVpcConfiguration pSubnetIds_ pSecurityGroupIds_ =+  VpcConfiguration'+    { subnetIds =+        Lens.coerced Lens.# pSubnetIds_,+      securityGroupIds =+        Lens.coerced Lens.# pSecurityGroupIds_+    }++-- | The array of+-- <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_Subnet.html Subnet>+-- IDs used by the VPC configuration.+vpcConfiguration_subnetIds :: Lens.Lens' VpcConfiguration (Prelude.NonEmpty Prelude.Text)+vpcConfiguration_subnetIds = Lens.lens (\VpcConfiguration' {subnetIds} -> subnetIds) (\s@VpcConfiguration' {} a -> s {subnetIds = a} :: VpcConfiguration) Prelude.. Lens.coerced++-- | The array of+-- <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_SecurityGroup.html SecurityGroup>+-- IDs used by the VPC configuration.+vpcConfiguration_securityGroupIds :: Lens.Lens' VpcConfiguration (Prelude.NonEmpty Prelude.Text)+vpcConfiguration_securityGroupIds = Lens.lens (\VpcConfiguration' {securityGroupIds} -> securityGroupIds) (\s@VpcConfiguration' {} a -> s {securityGroupIds = a} :: VpcConfiguration) Prelude.. Lens.coerced++instance Prelude.Hashable VpcConfiguration where+  hashWithSalt _salt VpcConfiguration' {..} =+    _salt+      `Prelude.hashWithSalt` subnetIds+      `Prelude.hashWithSalt` securityGroupIds++instance Prelude.NFData VpcConfiguration where+  rnf VpcConfiguration' {..} =+    Prelude.rnf subnetIds+      `Prelude.seq` Prelude.rnf securityGroupIds++instance Data.ToJSON VpcConfiguration where+  toJSON VpcConfiguration' {..} =+    Data.object+      ( Prelude.catMaybes+          [ Prelude.Just ("SubnetIds" Data..= subnetIds),+            Prelude.Just+              ("SecurityGroupIds" Data..= securityGroupIds)+          ]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/VpcConfigurationDescription.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.KinesisAnalyticsV2.Types.VpcConfigurationDescription+-- 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.KinesisAnalyticsV2.Types.VpcConfigurationDescription 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++-- | Describes the parameters of a VPC used by the application.+--+-- /See:/ 'newVpcConfigurationDescription' smart constructor.+data VpcConfigurationDescription = VpcConfigurationDescription'+  { -- | The ID of the VPC configuration.+    vpcConfigurationId :: Prelude.Text,+    -- | The ID of the associated VPC.+    vpcId :: Prelude.Text,+    -- | The array of+    -- <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_Subnet.html Subnet>+    -- IDs used by the VPC configuration.+    subnetIds :: Prelude.NonEmpty Prelude.Text,+    -- | The array of+    -- <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_SecurityGroup.html SecurityGroup>+    -- IDs used by the VPC configuration.+    securityGroupIds :: Prelude.NonEmpty Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'VpcConfigurationDescription' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'vpcConfigurationId', 'vpcConfigurationDescription_vpcConfigurationId' - The ID of the VPC configuration.+--+-- 'vpcId', 'vpcConfigurationDescription_vpcId' - The ID of the associated VPC.+--+-- 'subnetIds', 'vpcConfigurationDescription_subnetIds' - The array of+-- <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_Subnet.html Subnet>+-- IDs used by the VPC configuration.+--+-- 'securityGroupIds', 'vpcConfigurationDescription_securityGroupIds' - The array of+-- <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_SecurityGroup.html SecurityGroup>+-- IDs used by the VPC configuration.+newVpcConfigurationDescription ::+  -- | 'vpcConfigurationId'+  Prelude.Text ->+  -- | 'vpcId'+  Prelude.Text ->+  -- | 'subnetIds'+  Prelude.NonEmpty Prelude.Text ->+  -- | 'securityGroupIds'+  Prelude.NonEmpty Prelude.Text ->+  VpcConfigurationDescription+newVpcConfigurationDescription+  pVpcConfigurationId_+  pVpcId_+  pSubnetIds_+  pSecurityGroupIds_ =+    VpcConfigurationDescription'+      { vpcConfigurationId =+          pVpcConfigurationId_,+        vpcId = pVpcId_,+        subnetIds = Lens.coerced Lens.# pSubnetIds_,+        securityGroupIds =+          Lens.coerced Lens.# pSecurityGroupIds_+      }++-- | The ID of the VPC configuration.+vpcConfigurationDescription_vpcConfigurationId :: Lens.Lens' VpcConfigurationDescription Prelude.Text+vpcConfigurationDescription_vpcConfigurationId = Lens.lens (\VpcConfigurationDescription' {vpcConfigurationId} -> vpcConfigurationId) (\s@VpcConfigurationDescription' {} a -> s {vpcConfigurationId = a} :: VpcConfigurationDescription)++-- | The ID of the associated VPC.+vpcConfigurationDescription_vpcId :: Lens.Lens' VpcConfigurationDescription Prelude.Text+vpcConfigurationDescription_vpcId = Lens.lens (\VpcConfigurationDescription' {vpcId} -> vpcId) (\s@VpcConfigurationDescription' {} a -> s {vpcId = a} :: VpcConfigurationDescription)++-- | The array of+-- <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_Subnet.html Subnet>+-- IDs used by the VPC configuration.+vpcConfigurationDescription_subnetIds :: Lens.Lens' VpcConfigurationDescription (Prelude.NonEmpty Prelude.Text)+vpcConfigurationDescription_subnetIds = Lens.lens (\VpcConfigurationDescription' {subnetIds} -> subnetIds) (\s@VpcConfigurationDescription' {} a -> s {subnetIds = a} :: VpcConfigurationDescription) Prelude.. Lens.coerced++-- | The array of+-- <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_SecurityGroup.html SecurityGroup>+-- IDs used by the VPC configuration.+vpcConfigurationDescription_securityGroupIds :: Lens.Lens' VpcConfigurationDescription (Prelude.NonEmpty Prelude.Text)+vpcConfigurationDescription_securityGroupIds = Lens.lens (\VpcConfigurationDescription' {securityGroupIds} -> securityGroupIds) (\s@VpcConfigurationDescription' {} a -> s {securityGroupIds = a} :: VpcConfigurationDescription) Prelude.. Lens.coerced++instance Data.FromJSON VpcConfigurationDescription where+  parseJSON =+    Data.withObject+      "VpcConfigurationDescription"+      ( \x ->+          VpcConfigurationDescription'+            Prelude.<$> (x Data..: "VpcConfigurationId")+            Prelude.<*> (x Data..: "VpcId")+            Prelude.<*> (x Data..: "SubnetIds")+            Prelude.<*> (x Data..: "SecurityGroupIds")+      )++instance Prelude.Hashable VpcConfigurationDescription where+  hashWithSalt _salt VpcConfigurationDescription' {..} =+    _salt+      `Prelude.hashWithSalt` vpcConfigurationId+      `Prelude.hashWithSalt` vpcId+      `Prelude.hashWithSalt` subnetIds+      `Prelude.hashWithSalt` securityGroupIds++instance Prelude.NFData VpcConfigurationDescription where+  rnf VpcConfigurationDescription' {..} =+    Prelude.rnf vpcConfigurationId+      `Prelude.seq` Prelude.rnf vpcId+      `Prelude.seq` Prelude.rnf subnetIds+      `Prelude.seq` Prelude.rnf securityGroupIds
+ gen/Amazonka/KinesisAnalyticsV2/Types/VpcConfigurationUpdate.hs view
@@ -0,0 +1,113 @@+{-# 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.KinesisAnalyticsV2.Types.VpcConfigurationUpdate+-- 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.KinesisAnalyticsV2.Types.VpcConfigurationUpdate 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++-- | Describes updates to the VPC configuration used by the application.+--+-- /See:/ 'newVpcConfigurationUpdate' smart constructor.+data VpcConfigurationUpdate = VpcConfigurationUpdate'+  { -- | Describes updates to the array of+    -- <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_SecurityGroup.html SecurityGroup>+    -- IDs used by the VPC configuration.+    securityGroupIdUpdates :: Prelude.Maybe (Prelude.NonEmpty Prelude.Text),+    -- | Describes updates to the array of+    -- <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_Subnet.html Subnet>+    -- IDs used by the VPC configuration.+    subnetIdUpdates :: Prelude.Maybe (Prelude.NonEmpty Prelude.Text),+    -- | Describes an update to the ID of the VPC configuration.+    vpcConfigurationId :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'VpcConfigurationUpdate' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'securityGroupIdUpdates', 'vpcConfigurationUpdate_securityGroupIdUpdates' - Describes updates to the array of+-- <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_SecurityGroup.html SecurityGroup>+-- IDs used by the VPC configuration.+--+-- 'subnetIdUpdates', 'vpcConfigurationUpdate_subnetIdUpdates' - Describes updates to the array of+-- <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_Subnet.html Subnet>+-- IDs used by the VPC configuration.+--+-- 'vpcConfigurationId', 'vpcConfigurationUpdate_vpcConfigurationId' - Describes an update to the ID of the VPC configuration.+newVpcConfigurationUpdate ::+  -- | 'vpcConfigurationId'+  Prelude.Text ->+  VpcConfigurationUpdate+newVpcConfigurationUpdate pVpcConfigurationId_ =+  VpcConfigurationUpdate'+    { securityGroupIdUpdates =+        Prelude.Nothing,+      subnetIdUpdates = Prelude.Nothing,+      vpcConfigurationId = pVpcConfigurationId_+    }++-- | Describes updates to the array of+-- <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_SecurityGroup.html SecurityGroup>+-- IDs used by the VPC configuration.+vpcConfigurationUpdate_securityGroupIdUpdates :: Lens.Lens' VpcConfigurationUpdate (Prelude.Maybe (Prelude.NonEmpty Prelude.Text))+vpcConfigurationUpdate_securityGroupIdUpdates = Lens.lens (\VpcConfigurationUpdate' {securityGroupIdUpdates} -> securityGroupIdUpdates) (\s@VpcConfigurationUpdate' {} a -> s {securityGroupIdUpdates = a} :: VpcConfigurationUpdate) Prelude.. Lens.mapping Lens.coerced++-- | Describes updates to the array of+-- <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_Subnet.html Subnet>+-- IDs used by the VPC configuration.+vpcConfigurationUpdate_subnetIdUpdates :: Lens.Lens' VpcConfigurationUpdate (Prelude.Maybe (Prelude.NonEmpty Prelude.Text))+vpcConfigurationUpdate_subnetIdUpdates = Lens.lens (\VpcConfigurationUpdate' {subnetIdUpdates} -> subnetIdUpdates) (\s@VpcConfigurationUpdate' {} a -> s {subnetIdUpdates = a} :: VpcConfigurationUpdate) Prelude.. Lens.mapping Lens.coerced++-- | Describes an update to the ID of the VPC configuration.+vpcConfigurationUpdate_vpcConfigurationId :: Lens.Lens' VpcConfigurationUpdate Prelude.Text+vpcConfigurationUpdate_vpcConfigurationId = Lens.lens (\VpcConfigurationUpdate' {vpcConfigurationId} -> vpcConfigurationId) (\s@VpcConfigurationUpdate' {} a -> s {vpcConfigurationId = a} :: VpcConfigurationUpdate)++instance Prelude.Hashable VpcConfigurationUpdate where+  hashWithSalt _salt VpcConfigurationUpdate' {..} =+    _salt+      `Prelude.hashWithSalt` securityGroupIdUpdates+      `Prelude.hashWithSalt` subnetIdUpdates+      `Prelude.hashWithSalt` vpcConfigurationId++instance Prelude.NFData VpcConfigurationUpdate where+  rnf VpcConfigurationUpdate' {..} =+    Prelude.rnf securityGroupIdUpdates+      `Prelude.seq` Prelude.rnf subnetIdUpdates+      `Prelude.seq` Prelude.rnf vpcConfigurationId++instance Data.ToJSON VpcConfigurationUpdate where+  toJSON VpcConfigurationUpdate' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("SecurityGroupIdUpdates" Data..=)+              Prelude.<$> securityGroupIdUpdates,+            ("SubnetIdUpdates" Data..=)+              Prelude.<$> subnetIdUpdates,+            Prelude.Just+              ("VpcConfigurationId" Data..= vpcConfigurationId)+          ]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/ZeppelinApplicationConfiguration.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.KinesisAnalyticsV2.Types.ZeppelinApplicationConfiguration+-- 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.KinesisAnalyticsV2.Types.ZeppelinApplicationConfiguration where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types.CatalogConfiguration+import Amazonka.KinesisAnalyticsV2.Types.CustomArtifactConfiguration+import Amazonka.KinesisAnalyticsV2.Types.DeployAsApplicationConfiguration+import Amazonka.KinesisAnalyticsV2.Types.ZeppelinMonitoringConfiguration+import qualified Amazonka.Prelude as Prelude++-- | The configuration of a Kinesis Data Analytics Studio notebook.+--+-- /See:/ 'newZeppelinApplicationConfiguration' smart constructor.+data ZeppelinApplicationConfiguration = ZeppelinApplicationConfiguration'+  { -- | The Amazon Glue Data Catalog that you use in queries in a Kinesis Data+    -- Analytics Studio notebook.+    catalogConfiguration :: Prelude.Maybe CatalogConfiguration,+    -- | Custom artifacts are dependency JARs and user-defined functions (UDF).+    customArtifactsConfiguration :: Prelude.Maybe [CustomArtifactConfiguration],+    -- | The information required to deploy a Kinesis Data Analytics Studio+    -- notebook as an application with durable state.+    deployAsApplicationConfiguration :: Prelude.Maybe DeployAsApplicationConfiguration,+    -- | The monitoring configuration of a Kinesis Data Analytics Studio+    -- notebook.+    monitoringConfiguration :: Prelude.Maybe ZeppelinMonitoringConfiguration+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ZeppelinApplicationConfiguration' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'catalogConfiguration', 'zeppelinApplicationConfiguration_catalogConfiguration' - The Amazon Glue Data Catalog that you use in queries in a Kinesis Data+-- Analytics Studio notebook.+--+-- 'customArtifactsConfiguration', 'zeppelinApplicationConfiguration_customArtifactsConfiguration' - Custom artifacts are dependency JARs and user-defined functions (UDF).+--+-- 'deployAsApplicationConfiguration', 'zeppelinApplicationConfiguration_deployAsApplicationConfiguration' - The information required to deploy a Kinesis Data Analytics Studio+-- notebook as an application with durable state.+--+-- 'monitoringConfiguration', 'zeppelinApplicationConfiguration_monitoringConfiguration' - The monitoring configuration of a Kinesis Data Analytics Studio+-- notebook.+newZeppelinApplicationConfiguration ::+  ZeppelinApplicationConfiguration+newZeppelinApplicationConfiguration =+  ZeppelinApplicationConfiguration'+    { catalogConfiguration =+        Prelude.Nothing,+      customArtifactsConfiguration =+        Prelude.Nothing,+      deployAsApplicationConfiguration =+        Prelude.Nothing,+      monitoringConfiguration = Prelude.Nothing+    }++-- | The Amazon Glue Data Catalog that you use in queries in a Kinesis Data+-- Analytics Studio notebook.+zeppelinApplicationConfiguration_catalogConfiguration :: Lens.Lens' ZeppelinApplicationConfiguration (Prelude.Maybe CatalogConfiguration)+zeppelinApplicationConfiguration_catalogConfiguration = Lens.lens (\ZeppelinApplicationConfiguration' {catalogConfiguration} -> catalogConfiguration) (\s@ZeppelinApplicationConfiguration' {} a -> s {catalogConfiguration = a} :: ZeppelinApplicationConfiguration)++-- | Custom artifacts are dependency JARs and user-defined functions (UDF).+zeppelinApplicationConfiguration_customArtifactsConfiguration :: Lens.Lens' ZeppelinApplicationConfiguration (Prelude.Maybe [CustomArtifactConfiguration])+zeppelinApplicationConfiguration_customArtifactsConfiguration = Lens.lens (\ZeppelinApplicationConfiguration' {customArtifactsConfiguration} -> customArtifactsConfiguration) (\s@ZeppelinApplicationConfiguration' {} a -> s {customArtifactsConfiguration = a} :: ZeppelinApplicationConfiguration) Prelude.. Lens.mapping Lens.coerced++-- | The information required to deploy a Kinesis Data Analytics Studio+-- notebook as an application with durable state.+zeppelinApplicationConfiguration_deployAsApplicationConfiguration :: Lens.Lens' ZeppelinApplicationConfiguration (Prelude.Maybe DeployAsApplicationConfiguration)+zeppelinApplicationConfiguration_deployAsApplicationConfiguration = Lens.lens (\ZeppelinApplicationConfiguration' {deployAsApplicationConfiguration} -> deployAsApplicationConfiguration) (\s@ZeppelinApplicationConfiguration' {} a -> s {deployAsApplicationConfiguration = a} :: ZeppelinApplicationConfiguration)++-- | The monitoring configuration of a Kinesis Data Analytics Studio+-- notebook.+zeppelinApplicationConfiguration_monitoringConfiguration :: Lens.Lens' ZeppelinApplicationConfiguration (Prelude.Maybe ZeppelinMonitoringConfiguration)+zeppelinApplicationConfiguration_monitoringConfiguration = Lens.lens (\ZeppelinApplicationConfiguration' {monitoringConfiguration} -> monitoringConfiguration) (\s@ZeppelinApplicationConfiguration' {} a -> s {monitoringConfiguration = a} :: ZeppelinApplicationConfiguration)++instance+  Prelude.Hashable+    ZeppelinApplicationConfiguration+  where+  hashWithSalt+    _salt+    ZeppelinApplicationConfiguration' {..} =+      _salt+        `Prelude.hashWithSalt` catalogConfiguration+        `Prelude.hashWithSalt` customArtifactsConfiguration+        `Prelude.hashWithSalt` deployAsApplicationConfiguration+        `Prelude.hashWithSalt` monitoringConfiguration++instance+  Prelude.NFData+    ZeppelinApplicationConfiguration+  where+  rnf ZeppelinApplicationConfiguration' {..} =+    Prelude.rnf catalogConfiguration+      `Prelude.seq` Prelude.rnf customArtifactsConfiguration+      `Prelude.seq` Prelude.rnf deployAsApplicationConfiguration+      `Prelude.seq` Prelude.rnf monitoringConfiguration++instance Data.ToJSON ZeppelinApplicationConfiguration where+  toJSON ZeppelinApplicationConfiguration' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("CatalogConfiguration" Data..=)+              Prelude.<$> catalogConfiguration,+            ("CustomArtifactsConfiguration" Data..=)+              Prelude.<$> customArtifactsConfiguration,+            ("DeployAsApplicationConfiguration" Data..=)+              Prelude.<$> deployAsApplicationConfiguration,+            ("MonitoringConfiguration" Data..=)+              Prelude.<$> monitoringConfiguration+          ]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/ZeppelinApplicationConfigurationDescription.hs view
@@ -0,0 +1,145 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.KinesisAnalyticsV2.Types.ZeppelinApplicationConfigurationDescription+-- 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.KinesisAnalyticsV2.Types.ZeppelinApplicationConfigurationDescription where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types.CatalogConfigurationDescription+import Amazonka.KinesisAnalyticsV2.Types.CustomArtifactConfigurationDescription+import Amazonka.KinesisAnalyticsV2.Types.DeployAsApplicationConfigurationDescription+import Amazonka.KinesisAnalyticsV2.Types.ZeppelinMonitoringConfigurationDescription+import qualified Amazonka.Prelude as Prelude++-- | The configuration of a Kinesis Data Analytics Studio notebook.+--+-- /See:/ 'newZeppelinApplicationConfigurationDescription' smart constructor.+data ZeppelinApplicationConfigurationDescription = ZeppelinApplicationConfigurationDescription'+  { -- | The Amazon Glue Data Catalog that is associated with the Kinesis Data+    -- Analytics Studio notebook.+    catalogConfigurationDescription :: Prelude.Maybe CatalogConfigurationDescription,+    -- | Custom artifacts are dependency JARs and user-defined functions (UDF).+    customArtifactsConfigurationDescription :: Prelude.Maybe [CustomArtifactConfigurationDescription],+    -- | The parameters required to deploy a Kinesis Data Analytics Studio+    -- notebook as an application with durable state.+    deployAsApplicationConfigurationDescription :: Prelude.Maybe DeployAsApplicationConfigurationDescription,+    -- | The monitoring configuration of a Kinesis Data Analytics Studio+    -- notebook.+    monitoringConfigurationDescription :: ZeppelinMonitoringConfigurationDescription+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ZeppelinApplicationConfigurationDescription' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'catalogConfigurationDescription', 'zeppelinApplicationConfigurationDescription_catalogConfigurationDescription' - The Amazon Glue Data Catalog that is associated with the Kinesis Data+-- Analytics Studio notebook.+--+-- 'customArtifactsConfigurationDescription', 'zeppelinApplicationConfigurationDescription_customArtifactsConfigurationDescription' - Custom artifacts are dependency JARs and user-defined functions (UDF).+--+-- 'deployAsApplicationConfigurationDescription', 'zeppelinApplicationConfigurationDescription_deployAsApplicationConfigurationDescription' - The parameters required to deploy a Kinesis Data Analytics Studio+-- notebook as an application with durable state.+--+-- 'monitoringConfigurationDescription', 'zeppelinApplicationConfigurationDescription_monitoringConfigurationDescription' - The monitoring configuration of a Kinesis Data Analytics Studio+-- notebook.+newZeppelinApplicationConfigurationDescription ::+  -- | 'monitoringConfigurationDescription'+  ZeppelinMonitoringConfigurationDescription ->+  ZeppelinApplicationConfigurationDescription+newZeppelinApplicationConfigurationDescription+  pMonitoringConfigurationDescription_ =+    ZeppelinApplicationConfigurationDescription'+      { catalogConfigurationDescription =+          Prelude.Nothing,+        customArtifactsConfigurationDescription =+          Prelude.Nothing,+        deployAsApplicationConfigurationDescription =+          Prelude.Nothing,+        monitoringConfigurationDescription =+          pMonitoringConfigurationDescription_+      }++-- | The Amazon Glue Data Catalog that is associated with the Kinesis Data+-- Analytics Studio notebook.+zeppelinApplicationConfigurationDescription_catalogConfigurationDescription :: Lens.Lens' ZeppelinApplicationConfigurationDescription (Prelude.Maybe CatalogConfigurationDescription)+zeppelinApplicationConfigurationDescription_catalogConfigurationDescription = Lens.lens (\ZeppelinApplicationConfigurationDescription' {catalogConfigurationDescription} -> catalogConfigurationDescription) (\s@ZeppelinApplicationConfigurationDescription' {} a -> s {catalogConfigurationDescription = a} :: ZeppelinApplicationConfigurationDescription)++-- | Custom artifacts are dependency JARs and user-defined functions (UDF).+zeppelinApplicationConfigurationDescription_customArtifactsConfigurationDescription :: Lens.Lens' ZeppelinApplicationConfigurationDescription (Prelude.Maybe [CustomArtifactConfigurationDescription])+zeppelinApplicationConfigurationDescription_customArtifactsConfigurationDescription = Lens.lens (\ZeppelinApplicationConfigurationDescription' {customArtifactsConfigurationDescription} -> customArtifactsConfigurationDescription) (\s@ZeppelinApplicationConfigurationDescription' {} a -> s {customArtifactsConfigurationDescription = a} :: ZeppelinApplicationConfigurationDescription) Prelude.. Lens.mapping Lens.coerced++-- | The parameters required to deploy a Kinesis Data Analytics Studio+-- notebook as an application with durable state.+zeppelinApplicationConfigurationDescription_deployAsApplicationConfigurationDescription :: Lens.Lens' ZeppelinApplicationConfigurationDescription (Prelude.Maybe DeployAsApplicationConfigurationDescription)+zeppelinApplicationConfigurationDescription_deployAsApplicationConfigurationDescription = Lens.lens (\ZeppelinApplicationConfigurationDescription' {deployAsApplicationConfigurationDescription} -> deployAsApplicationConfigurationDescription) (\s@ZeppelinApplicationConfigurationDescription' {} a -> s {deployAsApplicationConfigurationDescription = a} :: ZeppelinApplicationConfigurationDescription)++-- | The monitoring configuration of a Kinesis Data Analytics Studio+-- notebook.+zeppelinApplicationConfigurationDescription_monitoringConfigurationDescription :: Lens.Lens' ZeppelinApplicationConfigurationDescription ZeppelinMonitoringConfigurationDescription+zeppelinApplicationConfigurationDescription_monitoringConfigurationDescription = Lens.lens (\ZeppelinApplicationConfigurationDescription' {monitoringConfigurationDescription} -> monitoringConfigurationDescription) (\s@ZeppelinApplicationConfigurationDescription' {} a -> s {monitoringConfigurationDescription = a} :: ZeppelinApplicationConfigurationDescription)++instance+  Data.FromJSON+    ZeppelinApplicationConfigurationDescription+  where+  parseJSON =+    Data.withObject+      "ZeppelinApplicationConfigurationDescription"+      ( \x ->+          ZeppelinApplicationConfigurationDescription'+            Prelude.<$> (x Data..:? "CatalogConfigurationDescription")+            Prelude.<*> ( x+                            Data..:? "CustomArtifactsConfigurationDescription"+                            Data..!= Prelude.mempty+                        )+            Prelude.<*> ( x+                            Data..:? "DeployAsApplicationConfigurationDescription"+                        )+            Prelude.<*> (x Data..: "MonitoringConfigurationDescription")+      )++instance+  Prelude.Hashable+    ZeppelinApplicationConfigurationDescription+  where+  hashWithSalt+    _salt+    ZeppelinApplicationConfigurationDescription' {..} =+      _salt+        `Prelude.hashWithSalt` catalogConfigurationDescription+        `Prelude.hashWithSalt` customArtifactsConfigurationDescription+        `Prelude.hashWithSalt` deployAsApplicationConfigurationDescription+        `Prelude.hashWithSalt` monitoringConfigurationDescription++instance+  Prelude.NFData+    ZeppelinApplicationConfigurationDescription+  where+  rnf ZeppelinApplicationConfigurationDescription' {..} =+    Prelude.rnf catalogConfigurationDescription+      `Prelude.seq` Prelude.rnf customArtifactsConfigurationDescription+      `Prelude.seq` Prelude.rnf+        deployAsApplicationConfigurationDescription+      `Prelude.seq` Prelude.rnf monitoringConfigurationDescription
+ gen/Amazonka/KinesisAnalyticsV2/Types/ZeppelinApplicationConfigurationUpdate.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.KinesisAnalyticsV2.Types.ZeppelinApplicationConfigurationUpdate+-- 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.KinesisAnalyticsV2.Types.ZeppelinApplicationConfigurationUpdate where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types.CatalogConfigurationUpdate+import Amazonka.KinesisAnalyticsV2.Types.CustomArtifactConfiguration+import Amazonka.KinesisAnalyticsV2.Types.DeployAsApplicationConfigurationUpdate+import Amazonka.KinesisAnalyticsV2.Types.ZeppelinMonitoringConfigurationUpdate+import qualified Amazonka.Prelude as Prelude++-- | Updates to the configuration of Kinesis Data Analytics Studio notebook.+--+-- /See:/ 'newZeppelinApplicationConfigurationUpdate' smart constructor.+data ZeppelinApplicationConfigurationUpdate = ZeppelinApplicationConfigurationUpdate'+  { -- | Updates to the configuration of the Amazon Glue Data Catalog that is+    -- associated with the Kinesis Data Analytics Studio notebook.+    catalogConfigurationUpdate :: Prelude.Maybe CatalogConfigurationUpdate,+    -- | Updates to the customer artifacts. Custom artifacts are dependency JAR+    -- files and user-defined functions (UDF).+    customArtifactsConfigurationUpdate :: Prelude.Maybe [CustomArtifactConfiguration],+    deployAsApplicationConfigurationUpdate :: Prelude.Maybe DeployAsApplicationConfigurationUpdate,+    -- | Updates to the monitoring configuration of a Kinesis Data Analytics+    -- Studio notebook.+    monitoringConfigurationUpdate :: Prelude.Maybe ZeppelinMonitoringConfigurationUpdate+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ZeppelinApplicationConfigurationUpdate' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'catalogConfigurationUpdate', 'zeppelinApplicationConfigurationUpdate_catalogConfigurationUpdate' - Updates to the configuration of the Amazon Glue Data Catalog that is+-- associated with the Kinesis Data Analytics Studio notebook.+--+-- 'customArtifactsConfigurationUpdate', 'zeppelinApplicationConfigurationUpdate_customArtifactsConfigurationUpdate' - Updates to the customer artifacts. Custom artifacts are dependency JAR+-- files and user-defined functions (UDF).+--+-- 'deployAsApplicationConfigurationUpdate', 'zeppelinApplicationConfigurationUpdate_deployAsApplicationConfigurationUpdate' - Undocumented member.+--+-- 'monitoringConfigurationUpdate', 'zeppelinApplicationConfigurationUpdate_monitoringConfigurationUpdate' - Updates to the monitoring configuration of a Kinesis Data Analytics+-- Studio notebook.+newZeppelinApplicationConfigurationUpdate ::+  ZeppelinApplicationConfigurationUpdate+newZeppelinApplicationConfigurationUpdate =+  ZeppelinApplicationConfigurationUpdate'+    { catalogConfigurationUpdate =+        Prelude.Nothing,+      customArtifactsConfigurationUpdate =+        Prelude.Nothing,+      deployAsApplicationConfigurationUpdate =+        Prelude.Nothing,+      monitoringConfigurationUpdate =+        Prelude.Nothing+    }++-- | Updates to the configuration of the Amazon Glue Data Catalog that is+-- associated with the Kinesis Data Analytics Studio notebook.+zeppelinApplicationConfigurationUpdate_catalogConfigurationUpdate :: Lens.Lens' ZeppelinApplicationConfigurationUpdate (Prelude.Maybe CatalogConfigurationUpdate)+zeppelinApplicationConfigurationUpdate_catalogConfigurationUpdate = Lens.lens (\ZeppelinApplicationConfigurationUpdate' {catalogConfigurationUpdate} -> catalogConfigurationUpdate) (\s@ZeppelinApplicationConfigurationUpdate' {} a -> s {catalogConfigurationUpdate = a} :: ZeppelinApplicationConfigurationUpdate)++-- | Updates to the customer artifacts. Custom artifacts are dependency JAR+-- files and user-defined functions (UDF).+zeppelinApplicationConfigurationUpdate_customArtifactsConfigurationUpdate :: Lens.Lens' ZeppelinApplicationConfigurationUpdate (Prelude.Maybe [CustomArtifactConfiguration])+zeppelinApplicationConfigurationUpdate_customArtifactsConfigurationUpdate = Lens.lens (\ZeppelinApplicationConfigurationUpdate' {customArtifactsConfigurationUpdate} -> customArtifactsConfigurationUpdate) (\s@ZeppelinApplicationConfigurationUpdate' {} a -> s {customArtifactsConfigurationUpdate = a} :: ZeppelinApplicationConfigurationUpdate) Prelude.. Lens.mapping Lens.coerced++-- | Undocumented member.+zeppelinApplicationConfigurationUpdate_deployAsApplicationConfigurationUpdate :: Lens.Lens' ZeppelinApplicationConfigurationUpdate (Prelude.Maybe DeployAsApplicationConfigurationUpdate)+zeppelinApplicationConfigurationUpdate_deployAsApplicationConfigurationUpdate = Lens.lens (\ZeppelinApplicationConfigurationUpdate' {deployAsApplicationConfigurationUpdate} -> deployAsApplicationConfigurationUpdate) (\s@ZeppelinApplicationConfigurationUpdate' {} a -> s {deployAsApplicationConfigurationUpdate = a} :: ZeppelinApplicationConfigurationUpdate)++-- | Updates to the monitoring configuration of a Kinesis Data Analytics+-- Studio notebook.+zeppelinApplicationConfigurationUpdate_monitoringConfigurationUpdate :: Lens.Lens' ZeppelinApplicationConfigurationUpdate (Prelude.Maybe ZeppelinMonitoringConfigurationUpdate)+zeppelinApplicationConfigurationUpdate_monitoringConfigurationUpdate = Lens.lens (\ZeppelinApplicationConfigurationUpdate' {monitoringConfigurationUpdate} -> monitoringConfigurationUpdate) (\s@ZeppelinApplicationConfigurationUpdate' {} a -> s {monitoringConfigurationUpdate = a} :: ZeppelinApplicationConfigurationUpdate)++instance+  Prelude.Hashable+    ZeppelinApplicationConfigurationUpdate+  where+  hashWithSalt+    _salt+    ZeppelinApplicationConfigurationUpdate' {..} =+      _salt+        `Prelude.hashWithSalt` catalogConfigurationUpdate+        `Prelude.hashWithSalt` customArtifactsConfigurationUpdate+        `Prelude.hashWithSalt` deployAsApplicationConfigurationUpdate+        `Prelude.hashWithSalt` monitoringConfigurationUpdate++instance+  Prelude.NFData+    ZeppelinApplicationConfigurationUpdate+  where+  rnf ZeppelinApplicationConfigurationUpdate' {..} =+    Prelude.rnf catalogConfigurationUpdate+      `Prelude.seq` Prelude.rnf customArtifactsConfigurationUpdate+      `Prelude.seq` Prelude.rnf deployAsApplicationConfigurationUpdate+      `Prelude.seq` Prelude.rnf monitoringConfigurationUpdate++instance+  Data.ToJSON+    ZeppelinApplicationConfigurationUpdate+  where+  toJSON ZeppelinApplicationConfigurationUpdate' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("CatalogConfigurationUpdate" Data..=)+              Prelude.<$> catalogConfigurationUpdate,+            ("CustomArtifactsConfigurationUpdate" Data..=)+              Prelude.<$> customArtifactsConfigurationUpdate,+            ("DeployAsApplicationConfigurationUpdate" Data..=)+              Prelude.<$> deployAsApplicationConfigurationUpdate,+            ("MonitoringConfigurationUpdate" Data..=)+              Prelude.<$> monitoringConfigurationUpdate+          ]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/ZeppelinMonitoringConfiguration.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.KinesisAnalyticsV2.Types.ZeppelinMonitoringConfiguration+-- 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.KinesisAnalyticsV2.Types.ZeppelinMonitoringConfiguration where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types.LogLevel+import qualified Amazonka.Prelude as Prelude++-- | Describes configuration parameters for Amazon CloudWatch logging for a+-- Kinesis Data Analytics Studio notebook. For more information about+-- CloudWatch logging, see+-- <https://docs.aws.amazon.com/kinesisanalytics/latest/java/monitoring-overview.html Monitoring>.+--+-- /See:/ 'newZeppelinMonitoringConfiguration' smart constructor.+data ZeppelinMonitoringConfiguration = ZeppelinMonitoringConfiguration'+  { -- | The verbosity of the CloudWatch Logs for an application.+    logLevel :: LogLevel+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ZeppelinMonitoringConfiguration' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'logLevel', 'zeppelinMonitoringConfiguration_logLevel' - The verbosity of the CloudWatch Logs for an application.+newZeppelinMonitoringConfiguration ::+  -- | 'logLevel'+  LogLevel ->+  ZeppelinMonitoringConfiguration+newZeppelinMonitoringConfiguration pLogLevel_ =+  ZeppelinMonitoringConfiguration'+    { logLevel =+        pLogLevel_+    }++-- | The verbosity of the CloudWatch Logs for an application.+zeppelinMonitoringConfiguration_logLevel :: Lens.Lens' ZeppelinMonitoringConfiguration LogLevel+zeppelinMonitoringConfiguration_logLevel = Lens.lens (\ZeppelinMonitoringConfiguration' {logLevel} -> logLevel) (\s@ZeppelinMonitoringConfiguration' {} a -> s {logLevel = a} :: ZeppelinMonitoringConfiguration)++instance+  Prelude.Hashable+    ZeppelinMonitoringConfiguration+  where+  hashWithSalt+    _salt+    ZeppelinMonitoringConfiguration' {..} =+      _salt `Prelude.hashWithSalt` logLevel++instance+  Prelude.NFData+    ZeppelinMonitoringConfiguration+  where+  rnf ZeppelinMonitoringConfiguration' {..} =+    Prelude.rnf logLevel++instance Data.ToJSON ZeppelinMonitoringConfiguration where+  toJSON ZeppelinMonitoringConfiguration' {..} =+    Data.object+      ( Prelude.catMaybes+          [Prelude.Just ("LogLevel" Data..= logLevel)]+      )
+ gen/Amazonka/KinesisAnalyticsV2/Types/ZeppelinMonitoringConfigurationDescription.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.KinesisAnalyticsV2.Types.ZeppelinMonitoringConfigurationDescription+-- 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.KinesisAnalyticsV2.Types.ZeppelinMonitoringConfigurationDescription where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types.LogLevel+import qualified Amazonka.Prelude as Prelude++-- | The monitoring configuration for Apache Zeppelin within a Kinesis Data+-- Analytics Studio notebook.+--+-- /See:/ 'newZeppelinMonitoringConfigurationDescription' smart constructor.+data ZeppelinMonitoringConfigurationDescription = ZeppelinMonitoringConfigurationDescription'+  { -- | Describes the verbosity of the CloudWatch Logs for an application.+    logLevel :: Prelude.Maybe LogLevel+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ZeppelinMonitoringConfigurationDescription' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'logLevel', 'zeppelinMonitoringConfigurationDescription_logLevel' - Describes the verbosity of the CloudWatch Logs for an application.+newZeppelinMonitoringConfigurationDescription ::+  ZeppelinMonitoringConfigurationDescription+newZeppelinMonitoringConfigurationDescription =+  ZeppelinMonitoringConfigurationDescription'+    { logLevel =+        Prelude.Nothing+    }++-- | Describes the verbosity of the CloudWatch Logs for an application.+zeppelinMonitoringConfigurationDescription_logLevel :: Lens.Lens' ZeppelinMonitoringConfigurationDescription (Prelude.Maybe LogLevel)+zeppelinMonitoringConfigurationDescription_logLevel = Lens.lens (\ZeppelinMonitoringConfigurationDescription' {logLevel} -> logLevel) (\s@ZeppelinMonitoringConfigurationDescription' {} a -> s {logLevel = a} :: ZeppelinMonitoringConfigurationDescription)++instance+  Data.FromJSON+    ZeppelinMonitoringConfigurationDescription+  where+  parseJSON =+    Data.withObject+      "ZeppelinMonitoringConfigurationDescription"+      ( \x ->+          ZeppelinMonitoringConfigurationDescription'+            Prelude.<$> (x Data..:? "LogLevel")+      )++instance+  Prelude.Hashable+    ZeppelinMonitoringConfigurationDescription+  where+  hashWithSalt+    _salt+    ZeppelinMonitoringConfigurationDescription' {..} =+      _salt `Prelude.hashWithSalt` logLevel++instance+  Prelude.NFData+    ZeppelinMonitoringConfigurationDescription+  where+  rnf ZeppelinMonitoringConfigurationDescription' {..} =+    Prelude.rnf logLevel
+ gen/Amazonka/KinesisAnalyticsV2/Types/ZeppelinMonitoringConfigurationUpdate.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.KinesisAnalyticsV2.Types.ZeppelinMonitoringConfigurationUpdate+-- 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.KinesisAnalyticsV2.Types.ZeppelinMonitoringConfigurationUpdate where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types.LogLevel+import qualified Amazonka.Prelude as Prelude++-- | Updates to the monitoring configuration for Apache Zeppelin within a+-- Kinesis Data Analytics Studio notebook.+--+-- /See:/ 'newZeppelinMonitoringConfigurationUpdate' smart constructor.+data ZeppelinMonitoringConfigurationUpdate = ZeppelinMonitoringConfigurationUpdate'+  { -- | Updates to the logging level for Apache Zeppelin within a Kinesis Data+    -- Analytics Studio notebook.+    logLevelUpdate :: LogLevel+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ZeppelinMonitoringConfigurationUpdate' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'logLevelUpdate', 'zeppelinMonitoringConfigurationUpdate_logLevelUpdate' - Updates to the logging level for Apache Zeppelin within a Kinesis Data+-- Analytics Studio notebook.+newZeppelinMonitoringConfigurationUpdate ::+  -- | 'logLevelUpdate'+  LogLevel ->+  ZeppelinMonitoringConfigurationUpdate+newZeppelinMonitoringConfigurationUpdate+  pLogLevelUpdate_ =+    ZeppelinMonitoringConfigurationUpdate'+      { logLevelUpdate =+          pLogLevelUpdate_+      }++-- | Updates to the logging level for Apache Zeppelin within a Kinesis Data+-- Analytics Studio notebook.+zeppelinMonitoringConfigurationUpdate_logLevelUpdate :: Lens.Lens' ZeppelinMonitoringConfigurationUpdate LogLevel+zeppelinMonitoringConfigurationUpdate_logLevelUpdate = Lens.lens (\ZeppelinMonitoringConfigurationUpdate' {logLevelUpdate} -> logLevelUpdate) (\s@ZeppelinMonitoringConfigurationUpdate' {} a -> s {logLevelUpdate = a} :: ZeppelinMonitoringConfigurationUpdate)++instance+  Prelude.Hashable+    ZeppelinMonitoringConfigurationUpdate+  where+  hashWithSalt+    _salt+    ZeppelinMonitoringConfigurationUpdate' {..} =+      _salt `Prelude.hashWithSalt` logLevelUpdate++instance+  Prelude.NFData+    ZeppelinMonitoringConfigurationUpdate+  where+  rnf ZeppelinMonitoringConfigurationUpdate' {..} =+    Prelude.rnf logLevelUpdate++instance+  Data.ToJSON+    ZeppelinMonitoringConfigurationUpdate+  where+  toJSON ZeppelinMonitoringConfigurationUpdate' {..} =+    Data.object+      ( Prelude.catMaybes+          [ Prelude.Just+              ("LogLevelUpdate" Data..= logLevelUpdate)+          ]+      )
+ gen/Amazonka/KinesisAnalyticsV2/UntagResource.hs view
@@ -0,0 +1,178 @@+{-# 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.KinesisAnalyticsV2.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 a Kinesis Data Analytics application. For+-- more information, see+-- <https://docs.aws.amazon.com/kinesisanalytics/latest/java/how-tagging.html Using Tagging>.+module Amazonka.KinesisAnalyticsV2.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.KinesisAnalyticsV2.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 ARN of the Kinesis Data Analytics application from which to remove+    -- the tags.+    resourceARN :: Prelude.Text,+    -- | A list of keys of tags to remove from the specified application.+    tagKeys :: Prelude.NonEmpty 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 ARN of the Kinesis Data Analytics application from which to remove+-- the tags.+--+-- 'tagKeys', 'untagResource_tagKeys' - A list of keys of tags to remove from the specified application.+newUntagResource ::+  -- | 'resourceARN'+  Prelude.Text ->+  -- | 'tagKeys'+  Prelude.NonEmpty Prelude.Text ->+  UntagResource+newUntagResource pResourceARN_ pTagKeys_ =+  UntagResource'+    { resourceARN = pResourceARN_,+      tagKeys = Lens.coerced Lens.# pTagKeys_+    }++-- | The ARN of the Kinesis Data Analytics application from which to remove+-- the tags.+untagResource_resourceARN :: Lens.Lens' UntagResource Prelude.Text+untagResource_resourceARN = Lens.lens (\UntagResource' {resourceARN} -> resourceARN) (\s@UntagResource' {} a -> s {resourceARN = a} :: UntagResource)++-- | A list of keys of tags to remove from the specified application.+untagResource_tagKeys :: Lens.Lens' UntagResource (Prelude.NonEmpty 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.postJSON (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+          [ "X-Amz-Target"+              Data.=# ( "KinesisAnalytics_20180523.UntagResource" ::+                          Prelude.ByteString+                      ),+            "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance Data.ToJSON UntagResource where+  toJSON UntagResource' {..} =+    Data.object+      ( Prelude.catMaybes+          [ Prelude.Just ("ResourceARN" Data..= resourceARN),+            Prelude.Just ("TagKeys" Data..= tagKeys)+          ]+      )++instance Data.ToPath UntagResource where+  toPath = Prelude.const "/"++instance Data.ToQuery UntagResource where+  toQuery = Prelude.const Prelude.mempty++-- | /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/KinesisAnalyticsV2/UpdateApplication.hs view
@@ -0,0 +1,308 @@+{-# 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.KinesisAnalyticsV2.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 existing Kinesis Data Analytics application. Using this+-- operation, you can update application code, input configuration, and+-- output configuration.+--+-- Kinesis Data Analytics updates the @ApplicationVersionId@ each time you+-- update your application.+--+-- You cannot update the @RuntimeEnvironment@ of an existing application.+-- If you need to update an application\'s @RuntimeEnvironment@, you must+-- delete the application and create it again.+module Amazonka.KinesisAnalyticsV2.UpdateApplication+  ( -- * Creating a Request+    UpdateApplication (..),+    newUpdateApplication,++    -- * Request Lenses+    updateApplication_applicationConfigurationUpdate,+    updateApplication_cloudWatchLoggingOptionUpdates,+    updateApplication_conditionalToken,+    updateApplication_currentApplicationVersionId,+    updateApplication_runConfigurationUpdate,+    updateApplication_serviceExecutionRoleUpdate,+    updateApplication_applicationName,++    -- * Destructuring the Response+    UpdateApplicationResponse (..),+    newUpdateApplicationResponse,++    -- * Response Lenses+    updateApplicationResponse_httpStatus,+    updateApplicationResponse_applicationDetail,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.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'+  { -- | Describes application configuration updates.+    applicationConfigurationUpdate :: Prelude.Maybe ApplicationConfigurationUpdate,+    -- | Describes application Amazon CloudWatch logging option updates. You can+    -- only update existing CloudWatch logging options with this action. To add+    -- a new CloudWatch logging option, use+    -- AddApplicationCloudWatchLoggingOption.+    cloudWatchLoggingOptionUpdates :: Prelude.Maybe [CloudWatchLoggingOptionUpdate],+    -- | A value you use to implement strong concurrency for application updates.+    -- You must provide the @CurrentApplicationVersionId@ or the+    -- @ConditionalToken@. You get the application\'s current+    -- @ConditionalToken@ using DescribeApplication. For better concurrency+    -- support, use the @ConditionalToken@ parameter instead of+    -- @CurrentApplicationVersionId@.+    conditionalToken :: Prelude.Maybe Prelude.Text,+    -- | The current application version ID. You must provide the+    -- @CurrentApplicationVersionId@ or the @ConditionalToken@.You can retrieve+    -- the application version ID using DescribeApplication. For better+    -- concurrency support, use the @ConditionalToken@ parameter instead of+    -- @CurrentApplicationVersionId@.+    currentApplicationVersionId :: Prelude.Maybe Prelude.Natural,+    -- | Describes updates to the application\'s starting parameters.+    runConfigurationUpdate :: Prelude.Maybe RunConfigurationUpdate,+    -- | Describes updates to the service execution role.+    serviceExecutionRoleUpdate :: Prelude.Maybe Prelude.Text,+    -- | The name of the application to update.+    applicationName :: Prelude.Text+  }+  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:+--+-- 'applicationConfigurationUpdate', 'updateApplication_applicationConfigurationUpdate' - Describes application configuration updates.+--+-- 'cloudWatchLoggingOptionUpdates', 'updateApplication_cloudWatchLoggingOptionUpdates' - Describes application Amazon CloudWatch logging option updates. You can+-- only update existing CloudWatch logging options with this action. To add+-- a new CloudWatch logging option, use+-- AddApplicationCloudWatchLoggingOption.+--+-- 'conditionalToken', 'updateApplication_conditionalToken' - A value you use to implement strong concurrency for application updates.+-- You must provide the @CurrentApplicationVersionId@ or the+-- @ConditionalToken@. You get the application\'s current+-- @ConditionalToken@ using DescribeApplication. For better concurrency+-- support, use the @ConditionalToken@ parameter instead of+-- @CurrentApplicationVersionId@.+--+-- 'currentApplicationVersionId', 'updateApplication_currentApplicationVersionId' - The current application version ID. You must provide the+-- @CurrentApplicationVersionId@ or the @ConditionalToken@.You can retrieve+-- the application version ID using DescribeApplication. For better+-- concurrency support, use the @ConditionalToken@ parameter instead of+-- @CurrentApplicationVersionId@.+--+-- 'runConfigurationUpdate', 'updateApplication_runConfigurationUpdate' - Describes updates to the application\'s starting parameters.+--+-- 'serviceExecutionRoleUpdate', 'updateApplication_serviceExecutionRoleUpdate' - Describes updates to the service execution role.+--+-- 'applicationName', 'updateApplication_applicationName' - The name of the application to update.+newUpdateApplication ::+  -- | 'applicationName'+  Prelude.Text ->+  UpdateApplication+newUpdateApplication pApplicationName_ =+  UpdateApplication'+    { applicationConfigurationUpdate =+        Prelude.Nothing,+      cloudWatchLoggingOptionUpdates = Prelude.Nothing,+      conditionalToken = Prelude.Nothing,+      currentApplicationVersionId = Prelude.Nothing,+      runConfigurationUpdate = Prelude.Nothing,+      serviceExecutionRoleUpdate = Prelude.Nothing,+      applicationName = pApplicationName_+    }++-- | Describes application configuration updates.+updateApplication_applicationConfigurationUpdate :: Lens.Lens' UpdateApplication (Prelude.Maybe ApplicationConfigurationUpdate)+updateApplication_applicationConfigurationUpdate = Lens.lens (\UpdateApplication' {applicationConfigurationUpdate} -> applicationConfigurationUpdate) (\s@UpdateApplication' {} a -> s {applicationConfigurationUpdate = a} :: UpdateApplication)++-- | Describes application Amazon CloudWatch logging option updates. You can+-- only update existing CloudWatch logging options with this action. To add+-- a new CloudWatch logging option, use+-- AddApplicationCloudWatchLoggingOption.+updateApplication_cloudWatchLoggingOptionUpdates :: Lens.Lens' UpdateApplication (Prelude.Maybe [CloudWatchLoggingOptionUpdate])+updateApplication_cloudWatchLoggingOptionUpdates = Lens.lens (\UpdateApplication' {cloudWatchLoggingOptionUpdates} -> cloudWatchLoggingOptionUpdates) (\s@UpdateApplication' {} a -> s {cloudWatchLoggingOptionUpdates = a} :: UpdateApplication) Prelude.. Lens.mapping Lens.coerced++-- | A value you use to implement strong concurrency for application updates.+-- You must provide the @CurrentApplicationVersionId@ or the+-- @ConditionalToken@. You get the application\'s current+-- @ConditionalToken@ using DescribeApplication. For better concurrency+-- support, use the @ConditionalToken@ parameter instead of+-- @CurrentApplicationVersionId@.+updateApplication_conditionalToken :: Lens.Lens' UpdateApplication (Prelude.Maybe Prelude.Text)+updateApplication_conditionalToken = Lens.lens (\UpdateApplication' {conditionalToken} -> conditionalToken) (\s@UpdateApplication' {} a -> s {conditionalToken = a} :: UpdateApplication)++-- | The current application version ID. You must provide the+-- @CurrentApplicationVersionId@ or the @ConditionalToken@.You can retrieve+-- the application version ID using DescribeApplication. For better+-- concurrency support, use the @ConditionalToken@ parameter instead of+-- @CurrentApplicationVersionId@.+updateApplication_currentApplicationVersionId :: Lens.Lens' UpdateApplication (Prelude.Maybe Prelude.Natural)+updateApplication_currentApplicationVersionId = Lens.lens (\UpdateApplication' {currentApplicationVersionId} -> currentApplicationVersionId) (\s@UpdateApplication' {} a -> s {currentApplicationVersionId = a} :: UpdateApplication)++-- | Describes updates to the application\'s starting parameters.+updateApplication_runConfigurationUpdate :: Lens.Lens' UpdateApplication (Prelude.Maybe RunConfigurationUpdate)+updateApplication_runConfigurationUpdate = Lens.lens (\UpdateApplication' {runConfigurationUpdate} -> runConfigurationUpdate) (\s@UpdateApplication' {} a -> s {runConfigurationUpdate = a} :: UpdateApplication)++-- | Describes updates to the service execution role.+updateApplication_serviceExecutionRoleUpdate :: Lens.Lens' UpdateApplication (Prelude.Maybe Prelude.Text)+updateApplication_serviceExecutionRoleUpdate = Lens.lens (\UpdateApplication' {serviceExecutionRoleUpdate} -> serviceExecutionRoleUpdate) (\s@UpdateApplication' {} a -> s {serviceExecutionRoleUpdate = a} :: UpdateApplication)++-- | The name of the application to update.+updateApplication_applicationName :: Lens.Lens' UpdateApplication Prelude.Text+updateApplication_applicationName = Lens.lens (\UpdateApplication' {applicationName} -> applicationName) (\s@UpdateApplication' {} a -> s {applicationName = a} :: UpdateApplication)++instance Core.AWSRequest UpdateApplication where+  type+    AWSResponse UpdateApplication =+      UpdateApplicationResponse+  request overrides =+    Request.postJSON (overrides defaultService)+  response =+    Response.receiveJSON+      ( \s h x ->+          UpdateApplicationResponse'+            Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+            Prelude.<*> (x Data..:> "ApplicationDetail")+      )++instance Prelude.Hashable UpdateApplication where+  hashWithSalt _salt UpdateApplication' {..} =+    _salt+      `Prelude.hashWithSalt` applicationConfigurationUpdate+      `Prelude.hashWithSalt` cloudWatchLoggingOptionUpdates+      `Prelude.hashWithSalt` conditionalToken+      `Prelude.hashWithSalt` currentApplicationVersionId+      `Prelude.hashWithSalt` runConfigurationUpdate+      `Prelude.hashWithSalt` serviceExecutionRoleUpdate+      `Prelude.hashWithSalt` applicationName++instance Prelude.NFData UpdateApplication where+  rnf UpdateApplication' {..} =+    Prelude.rnf applicationConfigurationUpdate+      `Prelude.seq` Prelude.rnf cloudWatchLoggingOptionUpdates+      `Prelude.seq` Prelude.rnf conditionalToken+      `Prelude.seq` Prelude.rnf currentApplicationVersionId+      `Prelude.seq` Prelude.rnf runConfigurationUpdate+      `Prelude.seq` Prelude.rnf serviceExecutionRoleUpdate+      `Prelude.seq` Prelude.rnf applicationName++instance Data.ToHeaders UpdateApplication where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "X-Amz-Target"+              Data.=# ( "KinesisAnalytics_20180523.UpdateApplication" ::+                          Prelude.ByteString+                      ),+            "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance Data.ToJSON UpdateApplication where+  toJSON UpdateApplication' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("ApplicationConfigurationUpdate" Data..=)+              Prelude.<$> applicationConfigurationUpdate,+            ("CloudWatchLoggingOptionUpdates" Data..=)+              Prelude.<$> cloudWatchLoggingOptionUpdates,+            ("ConditionalToken" Data..=)+              Prelude.<$> conditionalToken,+            ("CurrentApplicationVersionId" Data..=)+              Prelude.<$> currentApplicationVersionId,+            ("RunConfigurationUpdate" Data..=)+              Prelude.<$> runConfigurationUpdate,+            ("ServiceExecutionRoleUpdate" Data..=)+              Prelude.<$> serviceExecutionRoleUpdate,+            Prelude.Just+              ("ApplicationName" Data..= applicationName)+          ]+      )++instance Data.ToPath UpdateApplication where+  toPath = Prelude.const "/"++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,+    -- | Describes application updates.+    applicationDetail :: ApplicationDetail+  }+  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.+--+-- 'applicationDetail', 'updateApplicationResponse_applicationDetail' - Describes application updates.+newUpdateApplicationResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  -- | 'applicationDetail'+  ApplicationDetail ->+  UpdateApplicationResponse+newUpdateApplicationResponse+  pHttpStatus_+  pApplicationDetail_ =+    UpdateApplicationResponse'+      { httpStatus =+          pHttpStatus_,+        applicationDetail = pApplicationDetail_+      }++-- | 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)++-- | Describes application updates.+updateApplicationResponse_applicationDetail :: Lens.Lens' UpdateApplicationResponse ApplicationDetail+updateApplicationResponse_applicationDetail = Lens.lens (\UpdateApplicationResponse' {applicationDetail} -> applicationDetail) (\s@UpdateApplicationResponse' {} a -> s {applicationDetail = a} :: UpdateApplicationResponse)++instance Prelude.NFData UpdateApplicationResponse where+  rnf UpdateApplicationResponse' {..} =+    Prelude.rnf httpStatus+      `Prelude.seq` Prelude.rnf applicationDetail
+ gen/Amazonka/KinesisAnalyticsV2/UpdateApplicationMaintenanceConfiguration.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.KinesisAnalyticsV2.UpdateApplicationMaintenanceConfiguration+-- 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 maintenance configuration of the Kinesis Data Analytics+-- application.+--+-- You can invoke this operation on an application that is in one of the+-- two following states: @READY@ or @RUNNING@. If you invoke it when the+-- application is in a state other than these two states, it throws a+-- @ResourceInUseException@. The service makes use of the updated+-- configuration the next time it schedules maintenance for the+-- application. If you invoke this operation after the service schedules+-- maintenance, the service will apply the configuration update the next+-- time it schedules maintenance for the application. This means that you+-- might not see the maintenance configuration update applied to the+-- maintenance process that follows a successful invocation of this+-- operation, but to the following maintenance process instead.+--+-- To see the current maintenance configuration of your application, invoke+-- the DescribeApplication operation.+--+-- For information about application maintenance, see+-- <https://docs.aws.amazon.com/kinesisanalytics/latest/java/maintenance.html Kinesis Data Analytics for Apache Flink Maintenance>.+--+-- This operation is supported only for Amazon Kinesis Data Analytics for+-- Apache Flink.+module Amazonka.KinesisAnalyticsV2.UpdateApplicationMaintenanceConfiguration+  ( -- * Creating a Request+    UpdateApplicationMaintenanceConfiguration (..),+    newUpdateApplicationMaintenanceConfiguration,++    -- * Request Lenses+    updateApplicationMaintenanceConfiguration_applicationName,+    updateApplicationMaintenanceConfiguration_applicationMaintenanceConfigurationUpdate,++    -- * Destructuring the Response+    UpdateApplicationMaintenanceConfigurationResponse (..),+    newUpdateApplicationMaintenanceConfigurationResponse,++    -- * Response Lenses+    updateApplicationMaintenanceConfigurationResponse_applicationARN,+    updateApplicationMaintenanceConfigurationResponse_applicationMaintenanceConfigurationDescription,+    updateApplicationMaintenanceConfigurationResponse_httpStatus,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newUpdateApplicationMaintenanceConfiguration' smart constructor.+data UpdateApplicationMaintenanceConfiguration = UpdateApplicationMaintenanceConfiguration'+  { -- | The name of the application for which you want to update the maintenance+    -- configuration.+    applicationName :: Prelude.Text,+    -- | Describes the application maintenance configuration update.+    applicationMaintenanceConfigurationUpdate :: ApplicationMaintenanceConfigurationUpdate+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateApplicationMaintenanceConfiguration' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applicationName', 'updateApplicationMaintenanceConfiguration_applicationName' - The name of the application for which you want to update the maintenance+-- configuration.+--+-- 'applicationMaintenanceConfigurationUpdate', 'updateApplicationMaintenanceConfiguration_applicationMaintenanceConfigurationUpdate' - Describes the application maintenance configuration update.+newUpdateApplicationMaintenanceConfiguration ::+  -- | 'applicationName'+  Prelude.Text ->+  -- | 'applicationMaintenanceConfigurationUpdate'+  ApplicationMaintenanceConfigurationUpdate ->+  UpdateApplicationMaintenanceConfiguration+newUpdateApplicationMaintenanceConfiguration+  pApplicationName_+  pApplicationMaintenanceConfigurationUpdate_ =+    UpdateApplicationMaintenanceConfiguration'+      { applicationName =+          pApplicationName_,+        applicationMaintenanceConfigurationUpdate =+          pApplicationMaintenanceConfigurationUpdate_+      }++-- | The name of the application for which you want to update the maintenance+-- configuration.+updateApplicationMaintenanceConfiguration_applicationName :: Lens.Lens' UpdateApplicationMaintenanceConfiguration Prelude.Text+updateApplicationMaintenanceConfiguration_applicationName = Lens.lens (\UpdateApplicationMaintenanceConfiguration' {applicationName} -> applicationName) (\s@UpdateApplicationMaintenanceConfiguration' {} a -> s {applicationName = a} :: UpdateApplicationMaintenanceConfiguration)++-- | Describes the application maintenance configuration update.+updateApplicationMaintenanceConfiguration_applicationMaintenanceConfigurationUpdate :: Lens.Lens' UpdateApplicationMaintenanceConfiguration ApplicationMaintenanceConfigurationUpdate+updateApplicationMaintenanceConfiguration_applicationMaintenanceConfigurationUpdate = Lens.lens (\UpdateApplicationMaintenanceConfiguration' {applicationMaintenanceConfigurationUpdate} -> applicationMaintenanceConfigurationUpdate) (\s@UpdateApplicationMaintenanceConfiguration' {} a -> s {applicationMaintenanceConfigurationUpdate = a} :: UpdateApplicationMaintenanceConfiguration)++instance+  Core.AWSRequest+    UpdateApplicationMaintenanceConfiguration+  where+  type+    AWSResponse+      UpdateApplicationMaintenanceConfiguration =+      UpdateApplicationMaintenanceConfigurationResponse+  request overrides =+    Request.postJSON (overrides defaultService)+  response =+    Response.receiveJSON+      ( \s h x ->+          UpdateApplicationMaintenanceConfigurationResponse'+            Prelude.<$> (x Data..?> "ApplicationARN")+            Prelude.<*> ( x+                            Data..?> "ApplicationMaintenanceConfigurationDescription"+                        )+            Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+      )++instance+  Prelude.Hashable+    UpdateApplicationMaintenanceConfiguration+  where+  hashWithSalt+    _salt+    UpdateApplicationMaintenanceConfiguration' {..} =+      _salt+        `Prelude.hashWithSalt` applicationName+        `Prelude.hashWithSalt` applicationMaintenanceConfigurationUpdate++instance+  Prelude.NFData+    UpdateApplicationMaintenanceConfiguration+  where+  rnf UpdateApplicationMaintenanceConfiguration' {..} =+    Prelude.rnf applicationName+      `Prelude.seq` Prelude.rnf applicationMaintenanceConfigurationUpdate++instance+  Data.ToHeaders+    UpdateApplicationMaintenanceConfiguration+  where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "X-Amz-Target"+              Data.=# ( "KinesisAnalytics_20180523.UpdateApplicationMaintenanceConfiguration" ::+                          Prelude.ByteString+                      ),+            "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance+  Data.ToJSON+    UpdateApplicationMaintenanceConfiguration+  where+  toJSON UpdateApplicationMaintenanceConfiguration' {..} =+    Data.object+      ( Prelude.catMaybes+          [ Prelude.Just+              ("ApplicationName" Data..= applicationName),+            Prelude.Just+              ( "ApplicationMaintenanceConfigurationUpdate"+                  Data..= applicationMaintenanceConfigurationUpdate+              )+          ]+      )++instance+  Data.ToPath+    UpdateApplicationMaintenanceConfiguration+  where+  toPath = Prelude.const "/"++instance+  Data.ToQuery+    UpdateApplicationMaintenanceConfiguration+  where+  toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newUpdateApplicationMaintenanceConfigurationResponse' smart constructor.+data UpdateApplicationMaintenanceConfigurationResponse = UpdateApplicationMaintenanceConfigurationResponse'+  { -- | The Amazon Resource Name (ARN) of the application.+    applicationARN :: Prelude.Maybe Prelude.Text,+    -- | The application maintenance configuration description after the update.+    applicationMaintenanceConfigurationDescription :: Prelude.Maybe ApplicationMaintenanceConfigurationDescription,+    -- | The response's http status code.+    httpStatus :: Prelude.Int+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateApplicationMaintenanceConfigurationResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applicationARN', 'updateApplicationMaintenanceConfigurationResponse_applicationARN' - The Amazon Resource Name (ARN) of the application.+--+-- 'applicationMaintenanceConfigurationDescription', 'updateApplicationMaintenanceConfigurationResponse_applicationMaintenanceConfigurationDescription' - The application maintenance configuration description after the update.+--+-- 'httpStatus', 'updateApplicationMaintenanceConfigurationResponse_httpStatus' - The response's http status code.+newUpdateApplicationMaintenanceConfigurationResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  UpdateApplicationMaintenanceConfigurationResponse+newUpdateApplicationMaintenanceConfigurationResponse+  pHttpStatus_ =+    UpdateApplicationMaintenanceConfigurationResponse'+      { applicationARN =+          Prelude.Nothing,+        applicationMaintenanceConfigurationDescription =+          Prelude.Nothing,+        httpStatus =+          pHttpStatus_+      }++-- | The Amazon Resource Name (ARN) of the application.+updateApplicationMaintenanceConfigurationResponse_applicationARN :: Lens.Lens' UpdateApplicationMaintenanceConfigurationResponse (Prelude.Maybe Prelude.Text)+updateApplicationMaintenanceConfigurationResponse_applicationARN = Lens.lens (\UpdateApplicationMaintenanceConfigurationResponse' {applicationARN} -> applicationARN) (\s@UpdateApplicationMaintenanceConfigurationResponse' {} a -> s {applicationARN = a} :: UpdateApplicationMaintenanceConfigurationResponse)++-- | The application maintenance configuration description after the update.+updateApplicationMaintenanceConfigurationResponse_applicationMaintenanceConfigurationDescription :: Lens.Lens' UpdateApplicationMaintenanceConfigurationResponse (Prelude.Maybe ApplicationMaintenanceConfigurationDescription)+updateApplicationMaintenanceConfigurationResponse_applicationMaintenanceConfigurationDescription = Lens.lens (\UpdateApplicationMaintenanceConfigurationResponse' {applicationMaintenanceConfigurationDescription} -> applicationMaintenanceConfigurationDescription) (\s@UpdateApplicationMaintenanceConfigurationResponse' {} a -> s {applicationMaintenanceConfigurationDescription = a} :: UpdateApplicationMaintenanceConfigurationResponse)++-- | The response's http status code.+updateApplicationMaintenanceConfigurationResponse_httpStatus :: Lens.Lens' UpdateApplicationMaintenanceConfigurationResponse Prelude.Int+updateApplicationMaintenanceConfigurationResponse_httpStatus = Lens.lens (\UpdateApplicationMaintenanceConfigurationResponse' {httpStatus} -> httpStatus) (\s@UpdateApplicationMaintenanceConfigurationResponse' {} a -> s {httpStatus = a} :: UpdateApplicationMaintenanceConfigurationResponse)++instance+  Prelude.NFData+    UpdateApplicationMaintenanceConfigurationResponse+  where+  rnf+    UpdateApplicationMaintenanceConfigurationResponse' {..} =+      Prelude.rnf applicationARN+        `Prelude.seq` Prelude.rnf+          applicationMaintenanceConfigurationDescription+        `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/KinesisAnalyticsV2/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.KinesisAnalyticsV2.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.KinesisAnalyticsV2.Waiters where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.KinesisAnalyticsV2.Lens+import Amazonka.KinesisAnalyticsV2.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.KinesisAnalyticsV2+import Test.Amazonka.KinesisAnalyticsV2.Internal+import Test.Tasty++main :: IO ()+main =+  defaultMain $+    testGroup+      "KinesisAnalyticsV2"+      [ testGroup "tests" tests,+        testGroup "fixtures" fixtures+      ]
+ test/Test/Amazonka/Gen/KinesisAnalyticsV2.hs view
@@ -0,0 +1,658 @@+{-# 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.KinesisAnalyticsV2+-- 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.KinesisAnalyticsV2 where++import Amazonka.KinesisAnalyticsV2+import qualified Data.Proxy as Proxy+import Test.Amazonka.Fixture+import Test.Amazonka.KinesisAnalyticsV2.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"+--         [ requestAddApplicationCloudWatchLoggingOption $+--             newAddApplicationCloudWatchLoggingOption+--+--         , requestAddApplicationInput $+--             newAddApplicationInput+--+--         , requestAddApplicationInputProcessingConfiguration $+--             newAddApplicationInputProcessingConfiguration+--+--         , requestAddApplicationOutput $+--             newAddApplicationOutput+--+--         , requestAddApplicationReferenceDataSource $+--             newAddApplicationReferenceDataSource+--+--         , requestAddApplicationVpcConfiguration $+--             newAddApplicationVpcConfiguration+--+--         , requestCreateApplication $+--             newCreateApplication+--+--         , requestCreateApplicationPresignedUrl $+--             newCreateApplicationPresignedUrl+--+--         , requestCreateApplicationSnapshot $+--             newCreateApplicationSnapshot+--+--         , requestDeleteApplication $+--             newDeleteApplication+--+--         , requestDeleteApplicationCloudWatchLoggingOption $+--             newDeleteApplicationCloudWatchLoggingOption+--+--         , requestDeleteApplicationInputProcessingConfiguration $+--             newDeleteApplicationInputProcessingConfiguration+--+--         , requestDeleteApplicationOutput $+--             newDeleteApplicationOutput+--+--         , requestDeleteApplicationReferenceDataSource $+--             newDeleteApplicationReferenceDataSource+--+--         , requestDeleteApplicationSnapshot $+--             newDeleteApplicationSnapshot+--+--         , requestDeleteApplicationVpcConfiguration $+--             newDeleteApplicationVpcConfiguration+--+--         , requestDescribeApplication $+--             newDescribeApplication+--+--         , requestDescribeApplicationSnapshot $+--             newDescribeApplicationSnapshot+--+--         , requestDescribeApplicationVersion $+--             newDescribeApplicationVersion+--+--         , requestDiscoverInputSchema $+--             newDiscoverInputSchema+--+--         , requestListApplicationSnapshots $+--             newListApplicationSnapshots+--+--         , requestListApplicationVersions $+--             newListApplicationVersions+--+--         , requestListApplications $+--             newListApplications+--+--         , requestListTagsForResource $+--             newListTagsForResource+--+--         , requestRollbackApplication $+--             newRollbackApplication+--+--         , requestStartApplication $+--             newStartApplication+--+--         , requestStopApplication $+--             newStopApplication+--+--         , requestTagResource $+--             newTagResource+--+--         , requestUntagResource $+--             newUntagResource+--+--         , requestUpdateApplication $+--             newUpdateApplication+--+--         , requestUpdateApplicationMaintenanceConfiguration $+--             newUpdateApplicationMaintenanceConfiguration+--+--           ]++--     , testGroup "response"+--         [ responseAddApplicationCloudWatchLoggingOption $+--             newAddApplicationCloudWatchLoggingOptionResponse+--+--         , responseAddApplicationInput $+--             newAddApplicationInputResponse+--+--         , responseAddApplicationInputProcessingConfiguration $+--             newAddApplicationInputProcessingConfigurationResponse+--+--         , responseAddApplicationOutput $+--             newAddApplicationOutputResponse+--+--         , responseAddApplicationReferenceDataSource $+--             newAddApplicationReferenceDataSourceResponse+--+--         , responseAddApplicationVpcConfiguration $+--             newAddApplicationVpcConfigurationResponse+--+--         , responseCreateApplication $+--             newCreateApplicationResponse+--+--         , responseCreateApplicationPresignedUrl $+--             newCreateApplicationPresignedUrlResponse+--+--         , responseCreateApplicationSnapshot $+--             newCreateApplicationSnapshotResponse+--+--         , responseDeleteApplication $+--             newDeleteApplicationResponse+--+--         , responseDeleteApplicationCloudWatchLoggingOption $+--             newDeleteApplicationCloudWatchLoggingOptionResponse+--+--         , responseDeleteApplicationInputProcessingConfiguration $+--             newDeleteApplicationInputProcessingConfigurationResponse+--+--         , responseDeleteApplicationOutput $+--             newDeleteApplicationOutputResponse+--+--         , responseDeleteApplicationReferenceDataSource $+--             newDeleteApplicationReferenceDataSourceResponse+--+--         , responseDeleteApplicationSnapshot $+--             newDeleteApplicationSnapshotResponse+--+--         , responseDeleteApplicationVpcConfiguration $+--             newDeleteApplicationVpcConfigurationResponse+--+--         , responseDescribeApplication $+--             newDescribeApplicationResponse+--+--         , responseDescribeApplicationSnapshot $+--             newDescribeApplicationSnapshotResponse+--+--         , responseDescribeApplicationVersion $+--             newDescribeApplicationVersionResponse+--+--         , responseDiscoverInputSchema $+--             newDiscoverInputSchemaResponse+--+--         , responseListApplicationSnapshots $+--             newListApplicationSnapshotsResponse+--+--         , responseListApplicationVersions $+--             newListApplicationVersionsResponse+--+--         , responseListApplications $+--             newListApplicationsResponse+--+--         , responseListTagsForResource $+--             newListTagsForResourceResponse+--+--         , responseRollbackApplication $+--             newRollbackApplicationResponse+--+--         , responseStartApplication $+--             newStartApplicationResponse+--+--         , responseStopApplication $+--             newStopApplicationResponse+--+--         , responseTagResource $+--             newTagResourceResponse+--+--         , responseUntagResource $+--             newUntagResourceResponse+--+--         , responseUpdateApplication $+--             newUpdateApplicationResponse+--+--         , responseUpdateApplicationMaintenanceConfiguration $+--             newUpdateApplicationMaintenanceConfigurationResponse+--+--           ]+--     ]++-- Requests++requestAddApplicationCloudWatchLoggingOption :: AddApplicationCloudWatchLoggingOption -> TestTree+requestAddApplicationCloudWatchLoggingOption =+  req+    "AddApplicationCloudWatchLoggingOption"+    "fixture/AddApplicationCloudWatchLoggingOption.yaml"++requestAddApplicationInput :: AddApplicationInput -> TestTree+requestAddApplicationInput =+  req+    "AddApplicationInput"+    "fixture/AddApplicationInput.yaml"++requestAddApplicationInputProcessingConfiguration :: AddApplicationInputProcessingConfiguration -> TestTree+requestAddApplicationInputProcessingConfiguration =+  req+    "AddApplicationInputProcessingConfiguration"+    "fixture/AddApplicationInputProcessingConfiguration.yaml"++requestAddApplicationOutput :: AddApplicationOutput -> TestTree+requestAddApplicationOutput =+  req+    "AddApplicationOutput"+    "fixture/AddApplicationOutput.yaml"++requestAddApplicationReferenceDataSource :: AddApplicationReferenceDataSource -> TestTree+requestAddApplicationReferenceDataSource =+  req+    "AddApplicationReferenceDataSource"+    "fixture/AddApplicationReferenceDataSource.yaml"++requestAddApplicationVpcConfiguration :: AddApplicationVpcConfiguration -> TestTree+requestAddApplicationVpcConfiguration =+  req+    "AddApplicationVpcConfiguration"+    "fixture/AddApplicationVpcConfiguration.yaml"++requestCreateApplication :: CreateApplication -> TestTree+requestCreateApplication =+  req+    "CreateApplication"+    "fixture/CreateApplication.yaml"++requestCreateApplicationPresignedUrl :: CreateApplicationPresignedUrl -> TestTree+requestCreateApplicationPresignedUrl =+  req+    "CreateApplicationPresignedUrl"+    "fixture/CreateApplicationPresignedUrl.yaml"++requestCreateApplicationSnapshot :: CreateApplicationSnapshot -> TestTree+requestCreateApplicationSnapshot =+  req+    "CreateApplicationSnapshot"+    "fixture/CreateApplicationSnapshot.yaml"++requestDeleteApplication :: DeleteApplication -> TestTree+requestDeleteApplication =+  req+    "DeleteApplication"+    "fixture/DeleteApplication.yaml"++requestDeleteApplicationCloudWatchLoggingOption :: DeleteApplicationCloudWatchLoggingOption -> TestTree+requestDeleteApplicationCloudWatchLoggingOption =+  req+    "DeleteApplicationCloudWatchLoggingOption"+    "fixture/DeleteApplicationCloudWatchLoggingOption.yaml"++requestDeleteApplicationInputProcessingConfiguration :: DeleteApplicationInputProcessingConfiguration -> TestTree+requestDeleteApplicationInputProcessingConfiguration =+  req+    "DeleteApplicationInputProcessingConfiguration"+    "fixture/DeleteApplicationInputProcessingConfiguration.yaml"++requestDeleteApplicationOutput :: DeleteApplicationOutput -> TestTree+requestDeleteApplicationOutput =+  req+    "DeleteApplicationOutput"+    "fixture/DeleteApplicationOutput.yaml"++requestDeleteApplicationReferenceDataSource :: DeleteApplicationReferenceDataSource -> TestTree+requestDeleteApplicationReferenceDataSource =+  req+    "DeleteApplicationReferenceDataSource"+    "fixture/DeleteApplicationReferenceDataSource.yaml"++requestDeleteApplicationSnapshot :: DeleteApplicationSnapshot -> TestTree+requestDeleteApplicationSnapshot =+  req+    "DeleteApplicationSnapshot"+    "fixture/DeleteApplicationSnapshot.yaml"++requestDeleteApplicationVpcConfiguration :: DeleteApplicationVpcConfiguration -> TestTree+requestDeleteApplicationVpcConfiguration =+  req+    "DeleteApplicationVpcConfiguration"+    "fixture/DeleteApplicationVpcConfiguration.yaml"++requestDescribeApplication :: DescribeApplication -> TestTree+requestDescribeApplication =+  req+    "DescribeApplication"+    "fixture/DescribeApplication.yaml"++requestDescribeApplicationSnapshot :: DescribeApplicationSnapshot -> TestTree+requestDescribeApplicationSnapshot =+  req+    "DescribeApplicationSnapshot"+    "fixture/DescribeApplicationSnapshot.yaml"++requestDescribeApplicationVersion :: DescribeApplicationVersion -> TestTree+requestDescribeApplicationVersion =+  req+    "DescribeApplicationVersion"+    "fixture/DescribeApplicationVersion.yaml"++requestDiscoverInputSchema :: DiscoverInputSchema -> TestTree+requestDiscoverInputSchema =+  req+    "DiscoverInputSchema"+    "fixture/DiscoverInputSchema.yaml"++requestListApplicationSnapshots :: ListApplicationSnapshots -> TestTree+requestListApplicationSnapshots =+  req+    "ListApplicationSnapshots"+    "fixture/ListApplicationSnapshots.yaml"++requestListApplicationVersions :: ListApplicationVersions -> TestTree+requestListApplicationVersions =+  req+    "ListApplicationVersions"+    "fixture/ListApplicationVersions.yaml"++requestListApplications :: ListApplications -> TestTree+requestListApplications =+  req+    "ListApplications"+    "fixture/ListApplications.yaml"++requestListTagsForResource :: ListTagsForResource -> TestTree+requestListTagsForResource =+  req+    "ListTagsForResource"+    "fixture/ListTagsForResource.yaml"++requestRollbackApplication :: RollbackApplication -> TestTree+requestRollbackApplication =+  req+    "RollbackApplication"+    "fixture/RollbackApplication.yaml"++requestStartApplication :: StartApplication -> TestTree+requestStartApplication =+  req+    "StartApplication"+    "fixture/StartApplication.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"++requestUpdateApplicationMaintenanceConfiguration :: UpdateApplicationMaintenanceConfiguration -> TestTree+requestUpdateApplicationMaintenanceConfiguration =+  req+    "UpdateApplicationMaintenanceConfiguration"+    "fixture/UpdateApplicationMaintenanceConfiguration.yaml"++-- Responses++responseAddApplicationCloudWatchLoggingOption :: AddApplicationCloudWatchLoggingOptionResponse -> TestTree+responseAddApplicationCloudWatchLoggingOption =+  res+    "AddApplicationCloudWatchLoggingOptionResponse"+    "fixture/AddApplicationCloudWatchLoggingOptionResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy AddApplicationCloudWatchLoggingOption)++responseAddApplicationInput :: AddApplicationInputResponse -> TestTree+responseAddApplicationInput =+  res+    "AddApplicationInputResponse"+    "fixture/AddApplicationInputResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy AddApplicationInput)++responseAddApplicationInputProcessingConfiguration :: AddApplicationInputProcessingConfigurationResponse -> TestTree+responseAddApplicationInputProcessingConfiguration =+  res+    "AddApplicationInputProcessingConfigurationResponse"+    "fixture/AddApplicationInputProcessingConfigurationResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy AddApplicationInputProcessingConfiguration)++responseAddApplicationOutput :: AddApplicationOutputResponse -> TestTree+responseAddApplicationOutput =+  res+    "AddApplicationOutputResponse"+    "fixture/AddApplicationOutputResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy AddApplicationOutput)++responseAddApplicationReferenceDataSource :: AddApplicationReferenceDataSourceResponse -> TestTree+responseAddApplicationReferenceDataSource =+  res+    "AddApplicationReferenceDataSourceResponse"+    "fixture/AddApplicationReferenceDataSourceResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy AddApplicationReferenceDataSource)++responseAddApplicationVpcConfiguration :: AddApplicationVpcConfigurationResponse -> TestTree+responseAddApplicationVpcConfiguration =+  res+    "AddApplicationVpcConfigurationResponse"+    "fixture/AddApplicationVpcConfigurationResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy AddApplicationVpcConfiguration)++responseCreateApplication :: CreateApplicationResponse -> TestTree+responseCreateApplication =+  res+    "CreateApplicationResponse"+    "fixture/CreateApplicationResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy CreateApplication)++responseCreateApplicationPresignedUrl :: CreateApplicationPresignedUrlResponse -> TestTree+responseCreateApplicationPresignedUrl =+  res+    "CreateApplicationPresignedUrlResponse"+    "fixture/CreateApplicationPresignedUrlResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy CreateApplicationPresignedUrl)++responseCreateApplicationSnapshot :: CreateApplicationSnapshotResponse -> TestTree+responseCreateApplicationSnapshot =+  res+    "CreateApplicationSnapshotResponse"+    "fixture/CreateApplicationSnapshotResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy CreateApplicationSnapshot)++responseDeleteApplication :: DeleteApplicationResponse -> TestTree+responseDeleteApplication =+  res+    "DeleteApplicationResponse"+    "fixture/DeleteApplicationResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy DeleteApplication)++responseDeleteApplicationCloudWatchLoggingOption :: DeleteApplicationCloudWatchLoggingOptionResponse -> TestTree+responseDeleteApplicationCloudWatchLoggingOption =+  res+    "DeleteApplicationCloudWatchLoggingOptionResponse"+    "fixture/DeleteApplicationCloudWatchLoggingOptionResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy DeleteApplicationCloudWatchLoggingOption)++responseDeleteApplicationInputProcessingConfiguration :: DeleteApplicationInputProcessingConfigurationResponse -> TestTree+responseDeleteApplicationInputProcessingConfiguration =+  res+    "DeleteApplicationInputProcessingConfigurationResponse"+    "fixture/DeleteApplicationInputProcessingConfigurationResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy DeleteApplicationInputProcessingConfiguration)++responseDeleteApplicationOutput :: DeleteApplicationOutputResponse -> TestTree+responseDeleteApplicationOutput =+  res+    "DeleteApplicationOutputResponse"+    "fixture/DeleteApplicationOutputResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy DeleteApplicationOutput)++responseDeleteApplicationReferenceDataSource :: DeleteApplicationReferenceDataSourceResponse -> TestTree+responseDeleteApplicationReferenceDataSource =+  res+    "DeleteApplicationReferenceDataSourceResponse"+    "fixture/DeleteApplicationReferenceDataSourceResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy DeleteApplicationReferenceDataSource)++responseDeleteApplicationSnapshot :: DeleteApplicationSnapshotResponse -> TestTree+responseDeleteApplicationSnapshot =+  res+    "DeleteApplicationSnapshotResponse"+    "fixture/DeleteApplicationSnapshotResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy DeleteApplicationSnapshot)++responseDeleteApplicationVpcConfiguration :: DeleteApplicationVpcConfigurationResponse -> TestTree+responseDeleteApplicationVpcConfiguration =+  res+    "DeleteApplicationVpcConfigurationResponse"+    "fixture/DeleteApplicationVpcConfigurationResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy DeleteApplicationVpcConfiguration)++responseDescribeApplication :: DescribeApplicationResponse -> TestTree+responseDescribeApplication =+  res+    "DescribeApplicationResponse"+    "fixture/DescribeApplicationResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy DescribeApplication)++responseDescribeApplicationSnapshot :: DescribeApplicationSnapshotResponse -> TestTree+responseDescribeApplicationSnapshot =+  res+    "DescribeApplicationSnapshotResponse"+    "fixture/DescribeApplicationSnapshotResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy DescribeApplicationSnapshot)++responseDescribeApplicationVersion :: DescribeApplicationVersionResponse -> TestTree+responseDescribeApplicationVersion =+  res+    "DescribeApplicationVersionResponse"+    "fixture/DescribeApplicationVersionResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy DescribeApplicationVersion)++responseDiscoverInputSchema :: DiscoverInputSchemaResponse -> TestTree+responseDiscoverInputSchema =+  res+    "DiscoverInputSchemaResponse"+    "fixture/DiscoverInputSchemaResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy DiscoverInputSchema)++responseListApplicationSnapshots :: ListApplicationSnapshotsResponse -> TestTree+responseListApplicationSnapshots =+  res+    "ListApplicationSnapshotsResponse"+    "fixture/ListApplicationSnapshotsResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy ListApplicationSnapshots)++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)++responseListTagsForResource :: ListTagsForResourceResponse -> TestTree+responseListTagsForResource =+  res+    "ListTagsForResourceResponse"+    "fixture/ListTagsForResourceResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy ListTagsForResource)++responseRollbackApplication :: RollbackApplicationResponse -> TestTree+responseRollbackApplication =+  res+    "RollbackApplicationResponse"+    "fixture/RollbackApplicationResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy RollbackApplication)++responseStartApplication :: StartApplicationResponse -> TestTree+responseStartApplication =+  res+    "StartApplicationResponse"+    "fixture/StartApplicationResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy StartApplication)++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)++responseUpdateApplicationMaintenanceConfiguration :: UpdateApplicationMaintenanceConfigurationResponse -> TestTree+responseUpdateApplicationMaintenanceConfiguration =+  res+    "UpdateApplicationMaintenanceConfigurationResponse"+    "fixture/UpdateApplicationMaintenanceConfigurationResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy UpdateApplicationMaintenanceConfiguration)
+ test/Test/Amazonka/KinesisAnalyticsV2.hs view
@@ -0,0 +1,20 @@+-- |+-- Module      : Test.Amazonka.KinesisAnalyticsV2+-- 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.KinesisAnalyticsV2+  ( tests,+    fixtures,+  )+where++import Test.Tasty (TestTree)++tests :: [TestTree]+tests = []++fixtures :: [TestTree]+fixtures = []
+ test/Test/Amazonka/KinesisAnalyticsV2/Internal.hs view
@@ -0,0 +1,8 @@+-- |+-- Module      : Test.Amazonka.KinesisAnalyticsV2.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.KinesisAnalyticsV2.Internal where