{-# 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.Glue.Types.CodeGenConfigurationNode
-- 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.Glue.Types.CodeGenConfigurationNode where

import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import Amazonka.Glue.Types.Aggregate
import Amazonka.Glue.Types.ApplyMapping
import Amazonka.Glue.Types.AthenaConnectorSource
import Amazonka.Glue.Types.BasicCatalogTarget
import Amazonka.Glue.Types.CatalogKafkaSource
import Amazonka.Glue.Types.CatalogKinesisSource
import Amazonka.Glue.Types.CatalogSource
import Amazonka.Glue.Types.CustomCode
import Amazonka.Glue.Types.DirectKafkaSource
import Amazonka.Glue.Types.DirectKinesisSource
import Amazonka.Glue.Types.DropDuplicates
import Amazonka.Glue.Types.DropFields
import Amazonka.Glue.Types.DropNullFields
import Amazonka.Glue.Types.DynamicTransform
import Amazonka.Glue.Types.DynamoDBCatalogSource
import Amazonka.Glue.Types.EvaluateDataQuality
import Amazonka.Glue.Types.FillMissingValues
import Amazonka.Glue.Types.Filter
import Amazonka.Glue.Types.GovernedCatalogSource
import Amazonka.Glue.Types.GovernedCatalogTarget
import Amazonka.Glue.Types.JDBCConnectorSource
import Amazonka.Glue.Types.JDBCConnectorTarget
import Amazonka.Glue.Types.Join
import Amazonka.Glue.Types.Merge
import Amazonka.Glue.Types.MicrosoftSQLServerCatalogSource
import Amazonka.Glue.Types.MicrosoftSQLServerCatalogTarget
import Amazonka.Glue.Types.MySQLCatalogSource
import Amazonka.Glue.Types.MySQLCatalogTarget
import Amazonka.Glue.Types.OracleSQLCatalogSource
import Amazonka.Glue.Types.OracleSQLCatalogTarget
import Amazonka.Glue.Types.PIIDetection
import Amazonka.Glue.Types.PostgreSQLCatalogSource
import Amazonka.Glue.Types.PostgreSQLCatalogTarget
import Amazonka.Glue.Types.RedshiftSource
import Amazonka.Glue.Types.RedshiftTarget
import Amazonka.Glue.Types.RelationalCatalogSource
import Amazonka.Glue.Types.RenameField
import Amazonka.Glue.Types.S3CatalogSource
import Amazonka.Glue.Types.S3CatalogTarget
import Amazonka.Glue.Types.S3CsvSource
import Amazonka.Glue.Types.S3DirectTarget
import Amazonka.Glue.Types.S3GlueParquetTarget
import Amazonka.Glue.Types.S3JsonSource
import Amazonka.Glue.Types.S3ParquetSource
import Amazonka.Glue.Types.SelectFields
import Amazonka.Glue.Types.SelectFromCollection
import Amazonka.Glue.Types.SparkConnectorSource
import Amazonka.Glue.Types.SparkConnectorTarget
import Amazonka.Glue.Types.SparkSQL
import Amazonka.Glue.Types.Spigot
import Amazonka.Glue.Types.SplitFields
import Amazonka.Glue.Types.Union
import qualified Amazonka.Prelude as Prelude

-- | @CodeGenConfigurationNode@ enumerates all valid Node types. One and only
-- one of its member variables can be populated.
--
-- /See:/ 'newCodeGenConfigurationNode' smart constructor.
data CodeGenConfigurationNode = CodeGenConfigurationNode'
  { -- | Specifies a transform that groups rows by chosen fields and computes the
    -- aggregated value by specified function.
    CodeGenConfigurationNode -> Maybe Aggregate
aggregate :: Prelude.Maybe Aggregate,
    -- | Specifies a transform that maps data property keys in the data source to
    -- data property keys in the data target. You can rename keys, modify the
    -- data types for keys, and choose which keys to drop from the dataset.
    CodeGenConfigurationNode -> Maybe ApplyMapping
applyMapping :: Prelude.Maybe ApplyMapping,
    -- | Specifies a connector to an Amazon Athena data source.
    CodeGenConfigurationNode -> Maybe AthenaConnectorSource
athenaConnectorSource :: Prelude.Maybe AthenaConnectorSource,
    -- | Specifies an Apache Kafka data store in the Data Catalog.
    CodeGenConfigurationNode -> Maybe CatalogKafkaSource
catalogKafkaSource :: Prelude.Maybe CatalogKafkaSource,
    -- | Specifies a Kinesis data source in the Glue Data Catalog.
    CodeGenConfigurationNode -> Maybe CatalogKinesisSource
catalogKinesisSource :: Prelude.Maybe CatalogKinesisSource,
    -- | Specifies a data store in the Glue Data Catalog.
    CodeGenConfigurationNode -> Maybe CatalogSource
catalogSource :: Prelude.Maybe CatalogSource,
    -- | Specifies a target that uses a Glue Data Catalog table.
    CodeGenConfigurationNode -> Maybe BasicCatalogTarget
catalogTarget :: Prelude.Maybe BasicCatalogTarget,
    -- | Specifies a transform that uses custom code you provide to perform the
    -- data transformation. The output is a collection of DynamicFrames.
    CodeGenConfigurationNode -> Maybe CustomCode
customCode :: Prelude.Maybe CustomCode,
    -- | Specifies an Apache Kafka data store.
    CodeGenConfigurationNode -> Maybe DirectKafkaSource
directKafkaSource :: Prelude.Maybe DirectKafkaSource,
    -- | Specifies a direct Amazon Kinesis data source.
    CodeGenConfigurationNode -> Maybe DirectKinesisSource
directKinesisSource :: Prelude.Maybe DirectKinesisSource,
    -- | Specifies a transform that removes rows of repeating data from a data
    -- set.
    CodeGenConfigurationNode -> Maybe DropDuplicates
dropDuplicates :: Prelude.Maybe DropDuplicates,
    -- | Specifies a transform that chooses the data property keys that you want
    -- to drop.
    CodeGenConfigurationNode -> Maybe DropFields
dropFields :: Prelude.Maybe DropFields,
    -- | Specifies a transform that removes columns from the dataset if all
    -- values in the column are \'null\'. By default, Glue Studio will
    -- recognize null objects, but some values such as empty strings, strings
    -- that are \"null\", -1 integers or other placeholders such as zeros, are
    -- not automatically recognized as nulls.
    CodeGenConfigurationNode -> Maybe DropNullFields
dropNullFields :: Prelude.Maybe DropNullFields,
    -- | Specifies a custom visual transform created by a user.
    CodeGenConfigurationNode -> Maybe DynamicTransform
dynamicTransform :: Prelude.Maybe DynamicTransform,
    CodeGenConfigurationNode -> Maybe DynamoDBCatalogSource
dynamoDBCatalogSource :: Prelude.Maybe DynamoDBCatalogSource,
    -- | Specifies your data quality evaluation criteria.
    CodeGenConfigurationNode -> Maybe EvaluateDataQuality
evaluateDataQuality :: Prelude.Maybe EvaluateDataQuality,
    -- | Specifies a transform that locates records in the dataset that have
    -- missing values and adds a new field with a value determined by
    -- imputation. The input data set is used to train the machine learning
    -- model that determines what the missing value should be.
    CodeGenConfigurationNode -> Maybe FillMissingValues
fillMissingValues :: Prelude.Maybe FillMissingValues,
    -- | Specifies a transform that splits a dataset into two, based on a filter
    -- condition.
    CodeGenConfigurationNode -> Maybe Filter
filter' :: Prelude.Maybe Filter,
    -- | Specifies a data source in a goverened Data Catalog.
    CodeGenConfigurationNode -> Maybe GovernedCatalogSource
governedCatalogSource :: Prelude.Maybe GovernedCatalogSource,
    -- | Specifies a data target that writes to a goverened catalog.
    CodeGenConfigurationNode -> Maybe GovernedCatalogTarget
governedCatalogTarget :: Prelude.Maybe GovernedCatalogTarget,
    -- | Specifies a connector to a JDBC data source.
    CodeGenConfigurationNode -> Maybe JDBCConnectorSource
jDBCConnectorSource :: Prelude.Maybe JDBCConnectorSource,
    -- | Specifies a data target that writes to Amazon S3 in Apache Parquet
    -- columnar storage.
    CodeGenConfigurationNode -> Maybe JDBCConnectorTarget
jDBCConnectorTarget :: Prelude.Maybe JDBCConnectorTarget,
    -- | Specifies a transform that joins two datasets into one dataset using a
    -- comparison phrase on the specified data property keys. You can use
    -- inner, outer, left, right, left semi, and left anti joins.
    CodeGenConfigurationNode -> Maybe Join
join :: Prelude.Maybe Join,
    -- | Specifies a transform that merges a @DynamicFrame@ with a staging
    -- @DynamicFrame@ based on the specified primary keys to identify records.
    -- Duplicate records (records with the same primary keys) are not
    -- de-duplicated.
    CodeGenConfigurationNode -> Maybe Merge
merge :: Prelude.Maybe Merge,
    -- | Specifies a Microsoft SQL server data source in the Glue Data Catalog.
    CodeGenConfigurationNode -> Maybe MicrosoftSQLServerCatalogSource
microsoftSQLServerCatalogSource :: Prelude.Maybe MicrosoftSQLServerCatalogSource,
    -- | Specifies a target that uses Microsoft SQL.
    CodeGenConfigurationNode -> Maybe MicrosoftSQLServerCatalogTarget
microsoftSQLServerCatalogTarget :: Prelude.Maybe MicrosoftSQLServerCatalogTarget,
    -- | Specifies a MySQL data source in the Glue Data Catalog.
    CodeGenConfigurationNode -> Maybe MySQLCatalogSource
mySQLCatalogSource :: Prelude.Maybe MySQLCatalogSource,
    -- | Specifies a target that uses MySQL.
    CodeGenConfigurationNode -> Maybe MySQLCatalogTarget
mySQLCatalogTarget :: Prelude.Maybe MySQLCatalogTarget,
    -- | Specifies an Oracle data source in the Glue Data Catalog.
    CodeGenConfigurationNode -> Maybe OracleSQLCatalogSource
oracleSQLCatalogSource :: Prelude.Maybe OracleSQLCatalogSource,
    -- | Specifies a target that uses Oracle SQL.
    CodeGenConfigurationNode -> Maybe OracleSQLCatalogTarget
oracleSQLCatalogTarget :: Prelude.Maybe OracleSQLCatalogTarget,
    -- | Specifies a transform that identifies, removes or masks PII data.
    CodeGenConfigurationNode -> Maybe PIIDetection
pIIDetection :: Prelude.Maybe PIIDetection,
    -- | Specifies a PostgresSQL data source in the Glue Data Catalog.
    CodeGenConfigurationNode -> Maybe PostgreSQLCatalogSource
postgreSQLCatalogSource :: Prelude.Maybe PostgreSQLCatalogSource,
    -- | Specifies a target that uses Postgres SQL.
    CodeGenConfigurationNode -> Maybe PostgreSQLCatalogTarget
postgreSQLCatalogTarget :: Prelude.Maybe PostgreSQLCatalogTarget,
    -- | Specifies an Amazon Redshift data store.
    CodeGenConfigurationNode -> Maybe RedshiftSource
redshiftSource :: Prelude.Maybe RedshiftSource,
    -- | Specifies a target that uses Amazon Redshift.
    CodeGenConfigurationNode -> Maybe RedshiftTarget
redshiftTarget :: Prelude.Maybe RedshiftTarget,
    CodeGenConfigurationNode -> Maybe RelationalCatalogSource
relationalCatalogSource :: Prelude.Maybe RelationalCatalogSource,
    -- | Specifies a transform that renames a single data property key.
    CodeGenConfigurationNode -> Maybe RenameField
renameField :: Prelude.Maybe RenameField,
    -- | Specifies an Amazon S3 data store in the Glue Data Catalog.
    CodeGenConfigurationNode -> Maybe S3CatalogSource
s3CatalogSource :: Prelude.Maybe S3CatalogSource,
    -- | Specifies a data target that writes to Amazon S3 using the Glue Data
    -- Catalog.
    CodeGenConfigurationNode -> Maybe S3CatalogTarget
s3CatalogTarget :: Prelude.Maybe S3CatalogTarget,
    -- | Specifies a command-separated value (CSV) data store stored in Amazon
    -- S3.
    CodeGenConfigurationNode -> Maybe S3CsvSource
s3CsvSource :: Prelude.Maybe S3CsvSource,
    -- | Specifies a data target that writes to Amazon S3.
    CodeGenConfigurationNode -> Maybe S3DirectTarget
s3DirectTarget :: Prelude.Maybe S3DirectTarget,
    -- | Specifies a data target that writes to Amazon S3 in Apache Parquet
    -- columnar storage.
    CodeGenConfigurationNode -> Maybe S3GlueParquetTarget
s3GlueParquetTarget :: Prelude.Maybe S3GlueParquetTarget,
    -- | Specifies a JSON data store stored in Amazon S3.
    CodeGenConfigurationNode -> Maybe S3JsonSource
s3JsonSource :: Prelude.Maybe S3JsonSource,
    -- | Specifies an Apache Parquet data store stored in Amazon S3.
    CodeGenConfigurationNode -> Maybe S3ParquetSource
s3ParquetSource :: Prelude.Maybe S3ParquetSource,
    -- | Specifies a transform that chooses the data property keys that you want
    -- to keep.
    CodeGenConfigurationNode -> Maybe SelectFields
selectFields :: Prelude.Maybe SelectFields,
    -- | Specifies a transform that chooses one @DynamicFrame@ from a collection
    -- of @DynamicFrames@. The output is the selected @DynamicFrame@
    CodeGenConfigurationNode -> Maybe SelectFromCollection
selectFromCollection :: Prelude.Maybe SelectFromCollection,
    -- | Specifies a connector to an Apache Spark data source.
    CodeGenConfigurationNode -> Maybe SparkConnectorSource
sparkConnectorSource :: Prelude.Maybe SparkConnectorSource,
    -- | Specifies a target that uses an Apache Spark connector.
    CodeGenConfigurationNode -> Maybe SparkConnectorTarget
sparkConnectorTarget :: Prelude.Maybe SparkConnectorTarget,
    -- | Specifies a transform where you enter a SQL query using Spark SQL syntax
    -- to transform the data. The output is a single @DynamicFrame@.
    CodeGenConfigurationNode -> Maybe SparkSQL
sparkSQL :: Prelude.Maybe SparkSQL,
    -- | Specifies a transform that writes samples of the data to an Amazon S3
    -- bucket.
    CodeGenConfigurationNode -> Maybe Spigot
spigot :: Prelude.Maybe Spigot,
    -- | Specifies a transform that splits data property keys into two
    -- @DynamicFrames@. The output is a collection of @DynamicFrames@: one with
    -- selected data property keys, and one with the remaining data property
    -- keys.
    CodeGenConfigurationNode -> Maybe SplitFields
splitFields :: Prelude.Maybe SplitFields,
    -- | Specifies a transform that combines the rows from two or more datasets
    -- into a single result.
    CodeGenConfigurationNode -> Maybe Union
union :: Prelude.Maybe Union
  }
  deriving (CodeGenConfigurationNode -> CodeGenConfigurationNode -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: CodeGenConfigurationNode -> CodeGenConfigurationNode -> Bool
$c/= :: CodeGenConfigurationNode -> CodeGenConfigurationNode -> Bool
== :: CodeGenConfigurationNode -> CodeGenConfigurationNode -> Bool
$c== :: CodeGenConfigurationNode -> CodeGenConfigurationNode -> Bool
Prelude.Eq, ReadPrec [CodeGenConfigurationNode]
ReadPrec CodeGenConfigurationNode
Int -> ReadS CodeGenConfigurationNode
ReadS [CodeGenConfigurationNode]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [CodeGenConfigurationNode]
$creadListPrec :: ReadPrec [CodeGenConfigurationNode]
readPrec :: ReadPrec CodeGenConfigurationNode
$creadPrec :: ReadPrec CodeGenConfigurationNode
readList :: ReadS [CodeGenConfigurationNode]
$creadList :: ReadS [CodeGenConfigurationNode]
readsPrec :: Int -> ReadS CodeGenConfigurationNode
$creadsPrec :: Int -> ReadS CodeGenConfigurationNode
Prelude.Read, Int -> CodeGenConfigurationNode -> ShowS
[CodeGenConfigurationNode] -> ShowS
CodeGenConfigurationNode -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [CodeGenConfigurationNode] -> ShowS
$cshowList :: [CodeGenConfigurationNode] -> ShowS
show :: CodeGenConfigurationNode -> String
$cshow :: CodeGenConfigurationNode -> String
showsPrec :: Int -> CodeGenConfigurationNode -> ShowS
$cshowsPrec :: Int -> CodeGenConfigurationNode -> ShowS
Prelude.Show, forall x.
Rep CodeGenConfigurationNode x -> CodeGenConfigurationNode
forall x.
CodeGenConfigurationNode -> Rep CodeGenConfigurationNode x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep CodeGenConfigurationNode x -> CodeGenConfigurationNode
$cfrom :: forall x.
CodeGenConfigurationNode -> Rep CodeGenConfigurationNode x
Prelude.Generic)

-- |
-- Create a value of 'CodeGenConfigurationNode' with all optional fields omitted.
--
-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.
--
-- The following record fields are available, with the corresponding lenses provided
-- for backwards compatibility:
--
-- 'aggregate', 'codeGenConfigurationNode_aggregate' - Specifies a transform that groups rows by chosen fields and computes the
-- aggregated value by specified function.
--
-- 'applyMapping', 'codeGenConfigurationNode_applyMapping' - Specifies a transform that maps data property keys in the data source to
-- data property keys in the data target. You can rename keys, modify the
-- data types for keys, and choose which keys to drop from the dataset.
--
-- 'athenaConnectorSource', 'codeGenConfigurationNode_athenaConnectorSource' - Specifies a connector to an Amazon Athena data source.
--
-- 'catalogKafkaSource', 'codeGenConfigurationNode_catalogKafkaSource' - Specifies an Apache Kafka data store in the Data Catalog.
--
-- 'catalogKinesisSource', 'codeGenConfigurationNode_catalogKinesisSource' - Specifies a Kinesis data source in the Glue Data Catalog.
--
-- 'catalogSource', 'codeGenConfigurationNode_catalogSource' - Specifies a data store in the Glue Data Catalog.
--
-- 'catalogTarget', 'codeGenConfigurationNode_catalogTarget' - Specifies a target that uses a Glue Data Catalog table.
--
-- 'customCode', 'codeGenConfigurationNode_customCode' - Specifies a transform that uses custom code you provide to perform the
-- data transformation. The output is a collection of DynamicFrames.
--
-- 'directKafkaSource', 'codeGenConfigurationNode_directKafkaSource' - Specifies an Apache Kafka data store.
--
-- 'directKinesisSource', 'codeGenConfigurationNode_directKinesisSource' - Specifies a direct Amazon Kinesis data source.
--
-- 'dropDuplicates', 'codeGenConfigurationNode_dropDuplicates' - Specifies a transform that removes rows of repeating data from a data
-- set.
--
-- 'dropFields', 'codeGenConfigurationNode_dropFields' - Specifies a transform that chooses the data property keys that you want
-- to drop.
--
-- 'dropNullFields', 'codeGenConfigurationNode_dropNullFields' - Specifies a transform that removes columns from the dataset if all
-- values in the column are \'null\'. By default, Glue Studio will
-- recognize null objects, but some values such as empty strings, strings
-- that are \"null\", -1 integers or other placeholders such as zeros, are
-- not automatically recognized as nulls.
--
-- 'dynamicTransform', 'codeGenConfigurationNode_dynamicTransform' - Specifies a custom visual transform created by a user.
--
-- 'dynamoDBCatalogSource', 'codeGenConfigurationNode_dynamoDBCatalogSource' - Undocumented member.
--
-- 'evaluateDataQuality', 'codeGenConfigurationNode_evaluateDataQuality' - Specifies your data quality evaluation criteria.
--
-- 'fillMissingValues', 'codeGenConfigurationNode_fillMissingValues' - Specifies a transform that locates records in the dataset that have
-- missing values and adds a new field with a value determined by
-- imputation. The input data set is used to train the machine learning
-- model that determines what the missing value should be.
--
-- 'filter'', 'codeGenConfigurationNode_filter' - Specifies a transform that splits a dataset into two, based on a filter
-- condition.
--
-- 'governedCatalogSource', 'codeGenConfigurationNode_governedCatalogSource' - Specifies a data source in a goverened Data Catalog.
--
-- 'governedCatalogTarget', 'codeGenConfigurationNode_governedCatalogTarget' - Specifies a data target that writes to a goverened catalog.
--
-- 'jDBCConnectorSource', 'codeGenConfigurationNode_jDBCConnectorSource' - Specifies a connector to a JDBC data source.
--
-- 'jDBCConnectorTarget', 'codeGenConfigurationNode_jDBCConnectorTarget' - Specifies a data target that writes to Amazon S3 in Apache Parquet
-- columnar storage.
--
-- 'join', 'codeGenConfigurationNode_join' - Specifies a transform that joins two datasets into one dataset using a
-- comparison phrase on the specified data property keys. You can use
-- inner, outer, left, right, left semi, and left anti joins.
--
-- 'merge', 'codeGenConfigurationNode_merge' - Specifies a transform that merges a @DynamicFrame@ with a staging
-- @DynamicFrame@ based on the specified primary keys to identify records.
-- Duplicate records (records with the same primary keys) are not
-- de-duplicated.
--
-- 'microsoftSQLServerCatalogSource', 'codeGenConfigurationNode_microsoftSQLServerCatalogSource' - Specifies a Microsoft SQL server data source in the Glue Data Catalog.
--
-- 'microsoftSQLServerCatalogTarget', 'codeGenConfigurationNode_microsoftSQLServerCatalogTarget' - Specifies a target that uses Microsoft SQL.
--
-- 'mySQLCatalogSource', 'codeGenConfigurationNode_mySQLCatalogSource' - Specifies a MySQL data source in the Glue Data Catalog.
--
-- 'mySQLCatalogTarget', 'codeGenConfigurationNode_mySQLCatalogTarget' - Specifies a target that uses MySQL.
--
-- 'oracleSQLCatalogSource', 'codeGenConfigurationNode_oracleSQLCatalogSource' - Specifies an Oracle data source in the Glue Data Catalog.
--
-- 'oracleSQLCatalogTarget', 'codeGenConfigurationNode_oracleSQLCatalogTarget' - Specifies a target that uses Oracle SQL.
--
-- 'pIIDetection', 'codeGenConfigurationNode_pIIDetection' - Specifies a transform that identifies, removes or masks PII data.
--
-- 'postgreSQLCatalogSource', 'codeGenConfigurationNode_postgreSQLCatalogSource' - Specifies a PostgresSQL data source in the Glue Data Catalog.
--
-- 'postgreSQLCatalogTarget', 'codeGenConfigurationNode_postgreSQLCatalogTarget' - Specifies a target that uses Postgres SQL.
--
-- 'redshiftSource', 'codeGenConfigurationNode_redshiftSource' - Specifies an Amazon Redshift data store.
--
-- 'redshiftTarget', 'codeGenConfigurationNode_redshiftTarget' - Specifies a target that uses Amazon Redshift.
--
-- 'relationalCatalogSource', 'codeGenConfigurationNode_relationalCatalogSource' - Undocumented member.
--
-- 'renameField', 'codeGenConfigurationNode_renameField' - Specifies a transform that renames a single data property key.
--
-- 's3CatalogSource', 'codeGenConfigurationNode_s3CatalogSource' - Specifies an Amazon S3 data store in the Glue Data Catalog.
--
-- 's3CatalogTarget', 'codeGenConfigurationNode_s3CatalogTarget' - Specifies a data target that writes to Amazon S3 using the Glue Data
-- Catalog.
--
-- 's3CsvSource', 'codeGenConfigurationNode_s3CsvSource' - Specifies a command-separated value (CSV) data store stored in Amazon
-- S3.
--
-- 's3DirectTarget', 'codeGenConfigurationNode_s3DirectTarget' - Specifies a data target that writes to Amazon S3.
--
-- 's3GlueParquetTarget', 'codeGenConfigurationNode_s3GlueParquetTarget' - Specifies a data target that writes to Amazon S3 in Apache Parquet
-- columnar storage.
--
-- 's3JsonSource', 'codeGenConfigurationNode_s3JsonSource' - Specifies a JSON data store stored in Amazon S3.
--
-- 's3ParquetSource', 'codeGenConfigurationNode_s3ParquetSource' - Specifies an Apache Parquet data store stored in Amazon S3.
--
-- 'selectFields', 'codeGenConfigurationNode_selectFields' - Specifies a transform that chooses the data property keys that you want
-- to keep.
--
-- 'selectFromCollection', 'codeGenConfigurationNode_selectFromCollection' - Specifies a transform that chooses one @DynamicFrame@ from a collection
-- of @DynamicFrames@. The output is the selected @DynamicFrame@
--
-- 'sparkConnectorSource', 'codeGenConfigurationNode_sparkConnectorSource' - Specifies a connector to an Apache Spark data source.
--
-- 'sparkConnectorTarget', 'codeGenConfigurationNode_sparkConnectorTarget' - Specifies a target that uses an Apache Spark connector.
--
-- 'sparkSQL', 'codeGenConfigurationNode_sparkSQL' - Specifies a transform where you enter a SQL query using Spark SQL syntax
-- to transform the data. The output is a single @DynamicFrame@.
--
-- 'spigot', 'codeGenConfigurationNode_spigot' - Specifies a transform that writes samples of the data to an Amazon S3
-- bucket.
--
-- 'splitFields', 'codeGenConfigurationNode_splitFields' - Specifies a transform that splits data property keys into two
-- @DynamicFrames@. The output is a collection of @DynamicFrames@: one with
-- selected data property keys, and one with the remaining data property
-- keys.
--
-- 'union', 'codeGenConfigurationNode_union' - Specifies a transform that combines the rows from two or more datasets
-- into a single result.
newCodeGenConfigurationNode ::
  CodeGenConfigurationNode
newCodeGenConfigurationNode :: CodeGenConfigurationNode
newCodeGenConfigurationNode =
  CodeGenConfigurationNode'
    { $sel:aggregate:CodeGenConfigurationNode' :: Maybe Aggregate
aggregate =
        forall a. Maybe a
Prelude.Nothing,
      $sel:applyMapping:CodeGenConfigurationNode' :: Maybe ApplyMapping
applyMapping = forall a. Maybe a
Prelude.Nothing,
      $sel:athenaConnectorSource:CodeGenConfigurationNode' :: Maybe AthenaConnectorSource
athenaConnectorSource = forall a. Maybe a
Prelude.Nothing,
      $sel:catalogKafkaSource:CodeGenConfigurationNode' :: Maybe CatalogKafkaSource
catalogKafkaSource = forall a. Maybe a
Prelude.Nothing,
      $sel:catalogKinesisSource:CodeGenConfigurationNode' :: Maybe CatalogKinesisSource
catalogKinesisSource = forall a. Maybe a
Prelude.Nothing,
      $sel:catalogSource:CodeGenConfigurationNode' :: Maybe CatalogSource
catalogSource = forall a. Maybe a
Prelude.Nothing,
      $sel:catalogTarget:CodeGenConfigurationNode' :: Maybe BasicCatalogTarget
catalogTarget = forall a. Maybe a
Prelude.Nothing,
      $sel:customCode:CodeGenConfigurationNode' :: Maybe CustomCode
customCode = forall a. Maybe a
Prelude.Nothing,
      $sel:directKafkaSource:CodeGenConfigurationNode' :: Maybe DirectKafkaSource
directKafkaSource = forall a. Maybe a
Prelude.Nothing,
      $sel:directKinesisSource:CodeGenConfigurationNode' :: Maybe DirectKinesisSource
directKinesisSource = forall a. Maybe a
Prelude.Nothing,
      $sel:dropDuplicates:CodeGenConfigurationNode' :: Maybe DropDuplicates
dropDuplicates = forall a. Maybe a
Prelude.Nothing,
      $sel:dropFields:CodeGenConfigurationNode' :: Maybe DropFields
dropFields = forall a. Maybe a
Prelude.Nothing,
      $sel:dropNullFields:CodeGenConfigurationNode' :: Maybe DropNullFields
dropNullFields = forall a. Maybe a
Prelude.Nothing,
      $sel:dynamicTransform:CodeGenConfigurationNode' :: Maybe DynamicTransform
dynamicTransform = forall a. Maybe a
Prelude.Nothing,
      $sel:dynamoDBCatalogSource:CodeGenConfigurationNode' :: Maybe DynamoDBCatalogSource
dynamoDBCatalogSource = forall a. Maybe a
Prelude.Nothing,
      $sel:evaluateDataQuality:CodeGenConfigurationNode' :: Maybe EvaluateDataQuality
evaluateDataQuality = forall a. Maybe a
Prelude.Nothing,
      $sel:fillMissingValues:CodeGenConfigurationNode' :: Maybe FillMissingValues
fillMissingValues = forall a. Maybe a
Prelude.Nothing,
      $sel:filter':CodeGenConfigurationNode' :: Maybe Filter
filter' = forall a. Maybe a
Prelude.Nothing,
      $sel:governedCatalogSource:CodeGenConfigurationNode' :: Maybe GovernedCatalogSource
governedCatalogSource = forall a. Maybe a
Prelude.Nothing,
      $sel:governedCatalogTarget:CodeGenConfigurationNode' :: Maybe GovernedCatalogTarget
governedCatalogTarget = forall a. Maybe a
Prelude.Nothing,
      $sel:jDBCConnectorSource:CodeGenConfigurationNode' :: Maybe JDBCConnectorSource
jDBCConnectorSource = forall a. Maybe a
Prelude.Nothing,
      $sel:jDBCConnectorTarget:CodeGenConfigurationNode' :: Maybe JDBCConnectorTarget
jDBCConnectorTarget = forall a. Maybe a
Prelude.Nothing,
      $sel:join:CodeGenConfigurationNode' :: Maybe Join
join = forall a. Maybe a
Prelude.Nothing,
      $sel:merge:CodeGenConfigurationNode' :: Maybe Merge
merge = forall a. Maybe a
Prelude.Nothing,
      $sel:microsoftSQLServerCatalogSource:CodeGenConfigurationNode' :: Maybe MicrosoftSQLServerCatalogSource
microsoftSQLServerCatalogSource = forall a. Maybe a
Prelude.Nothing,
      $sel:microsoftSQLServerCatalogTarget:CodeGenConfigurationNode' :: Maybe MicrosoftSQLServerCatalogTarget
microsoftSQLServerCatalogTarget = forall a. Maybe a
Prelude.Nothing,
      $sel:mySQLCatalogSource:CodeGenConfigurationNode' :: Maybe MySQLCatalogSource
mySQLCatalogSource = forall a. Maybe a
Prelude.Nothing,
      $sel:mySQLCatalogTarget:CodeGenConfigurationNode' :: Maybe MySQLCatalogTarget
mySQLCatalogTarget = forall a. Maybe a
Prelude.Nothing,
      $sel:oracleSQLCatalogSource:CodeGenConfigurationNode' :: Maybe OracleSQLCatalogSource
oracleSQLCatalogSource = forall a. Maybe a
Prelude.Nothing,
      $sel:oracleSQLCatalogTarget:CodeGenConfigurationNode' :: Maybe OracleSQLCatalogTarget
oracleSQLCatalogTarget = forall a. Maybe a
Prelude.Nothing,
      $sel:pIIDetection:CodeGenConfigurationNode' :: Maybe PIIDetection
pIIDetection = forall a. Maybe a
Prelude.Nothing,
      $sel:postgreSQLCatalogSource:CodeGenConfigurationNode' :: Maybe PostgreSQLCatalogSource
postgreSQLCatalogSource = forall a. Maybe a
Prelude.Nothing,
      $sel:postgreSQLCatalogTarget:CodeGenConfigurationNode' :: Maybe PostgreSQLCatalogTarget
postgreSQLCatalogTarget = forall a. Maybe a
Prelude.Nothing,
      $sel:redshiftSource:CodeGenConfigurationNode' :: Maybe RedshiftSource
redshiftSource = forall a. Maybe a
Prelude.Nothing,
      $sel:redshiftTarget:CodeGenConfigurationNode' :: Maybe RedshiftTarget
redshiftTarget = forall a. Maybe a
Prelude.Nothing,
      $sel:relationalCatalogSource:CodeGenConfigurationNode' :: Maybe RelationalCatalogSource
relationalCatalogSource = forall a. Maybe a
Prelude.Nothing,
      $sel:renameField:CodeGenConfigurationNode' :: Maybe RenameField
renameField = forall a. Maybe a
Prelude.Nothing,
      $sel:s3CatalogSource:CodeGenConfigurationNode' :: Maybe S3CatalogSource
s3CatalogSource = forall a. Maybe a
Prelude.Nothing,
      $sel:s3CatalogTarget:CodeGenConfigurationNode' :: Maybe S3CatalogTarget
s3CatalogTarget = forall a. Maybe a
Prelude.Nothing,
      $sel:s3CsvSource:CodeGenConfigurationNode' :: Maybe S3CsvSource
s3CsvSource = forall a. Maybe a
Prelude.Nothing,
      $sel:s3DirectTarget:CodeGenConfigurationNode' :: Maybe S3DirectTarget
s3DirectTarget = forall a. Maybe a
Prelude.Nothing,
      $sel:s3GlueParquetTarget:CodeGenConfigurationNode' :: Maybe S3GlueParquetTarget
s3GlueParquetTarget = forall a. Maybe a
Prelude.Nothing,
      $sel:s3JsonSource:CodeGenConfigurationNode' :: Maybe S3JsonSource
s3JsonSource = forall a. Maybe a
Prelude.Nothing,
      $sel:s3ParquetSource:CodeGenConfigurationNode' :: Maybe S3ParquetSource
s3ParquetSource = forall a. Maybe a
Prelude.Nothing,
      $sel:selectFields:CodeGenConfigurationNode' :: Maybe SelectFields
selectFields = forall a. Maybe a
Prelude.Nothing,
      $sel:selectFromCollection:CodeGenConfigurationNode' :: Maybe SelectFromCollection
selectFromCollection = forall a. Maybe a
Prelude.Nothing,
      $sel:sparkConnectorSource:CodeGenConfigurationNode' :: Maybe SparkConnectorSource
sparkConnectorSource = forall a. Maybe a
Prelude.Nothing,
      $sel:sparkConnectorTarget:CodeGenConfigurationNode' :: Maybe SparkConnectorTarget
sparkConnectorTarget = forall a. Maybe a
Prelude.Nothing,
      $sel:sparkSQL:CodeGenConfigurationNode' :: Maybe SparkSQL
sparkSQL = forall a. Maybe a
Prelude.Nothing,
      $sel:spigot:CodeGenConfigurationNode' :: Maybe Spigot
spigot = forall a. Maybe a
Prelude.Nothing,
      $sel:splitFields:CodeGenConfigurationNode' :: Maybe SplitFields
splitFields = forall a. Maybe a
Prelude.Nothing,
      $sel:union:CodeGenConfigurationNode' :: Maybe Union
union = forall a. Maybe a
Prelude.Nothing
    }

-- | Specifies a transform that groups rows by chosen fields and computes the
-- aggregated value by specified function.
codeGenConfigurationNode_aggregate :: Lens.Lens' CodeGenConfigurationNode (Prelude.Maybe Aggregate)
codeGenConfigurationNode_aggregate :: Lens' CodeGenConfigurationNode (Maybe Aggregate)
codeGenConfigurationNode_aggregate = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CodeGenConfigurationNode' {Maybe Aggregate
aggregate :: Maybe Aggregate
$sel:aggregate:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe Aggregate
aggregate} -> Maybe Aggregate
aggregate) (\s :: CodeGenConfigurationNode
s@CodeGenConfigurationNode' {} Maybe Aggregate
a -> CodeGenConfigurationNode
s {$sel:aggregate:CodeGenConfigurationNode' :: Maybe Aggregate
aggregate = Maybe Aggregate
a} :: CodeGenConfigurationNode)

-- | Specifies a transform that maps data property keys in the data source to
-- data property keys in the data target. You can rename keys, modify the
-- data types for keys, and choose which keys to drop from the dataset.
codeGenConfigurationNode_applyMapping :: Lens.Lens' CodeGenConfigurationNode (Prelude.Maybe ApplyMapping)
codeGenConfigurationNode_applyMapping :: Lens' CodeGenConfigurationNode (Maybe ApplyMapping)
codeGenConfigurationNode_applyMapping = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CodeGenConfigurationNode' {Maybe ApplyMapping
applyMapping :: Maybe ApplyMapping
$sel:applyMapping:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe ApplyMapping
applyMapping} -> Maybe ApplyMapping
applyMapping) (\s :: CodeGenConfigurationNode
s@CodeGenConfigurationNode' {} Maybe ApplyMapping
a -> CodeGenConfigurationNode
s {$sel:applyMapping:CodeGenConfigurationNode' :: Maybe ApplyMapping
applyMapping = Maybe ApplyMapping
a} :: CodeGenConfigurationNode)

-- | Specifies a connector to an Amazon Athena data source.
codeGenConfigurationNode_athenaConnectorSource :: Lens.Lens' CodeGenConfigurationNode (Prelude.Maybe AthenaConnectorSource)
codeGenConfigurationNode_athenaConnectorSource :: Lens' CodeGenConfigurationNode (Maybe AthenaConnectorSource)
codeGenConfigurationNode_athenaConnectorSource = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CodeGenConfigurationNode' {Maybe AthenaConnectorSource
athenaConnectorSource :: Maybe AthenaConnectorSource
$sel:athenaConnectorSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe AthenaConnectorSource
athenaConnectorSource} -> Maybe AthenaConnectorSource
athenaConnectorSource) (\s :: CodeGenConfigurationNode
s@CodeGenConfigurationNode' {} Maybe AthenaConnectorSource
a -> CodeGenConfigurationNode
s {$sel:athenaConnectorSource:CodeGenConfigurationNode' :: Maybe AthenaConnectorSource
athenaConnectorSource = Maybe AthenaConnectorSource
a} :: CodeGenConfigurationNode)

-- | Specifies an Apache Kafka data store in the Data Catalog.
codeGenConfigurationNode_catalogKafkaSource :: Lens.Lens' CodeGenConfigurationNode (Prelude.Maybe CatalogKafkaSource)
codeGenConfigurationNode_catalogKafkaSource :: Lens' CodeGenConfigurationNode (Maybe CatalogKafkaSource)
codeGenConfigurationNode_catalogKafkaSource = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CodeGenConfigurationNode' {Maybe CatalogKafkaSource
catalogKafkaSource :: Maybe CatalogKafkaSource
$sel:catalogKafkaSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe CatalogKafkaSource
catalogKafkaSource} -> Maybe CatalogKafkaSource
catalogKafkaSource) (\s :: CodeGenConfigurationNode
s@CodeGenConfigurationNode' {} Maybe CatalogKafkaSource
a -> CodeGenConfigurationNode
s {$sel:catalogKafkaSource:CodeGenConfigurationNode' :: Maybe CatalogKafkaSource
catalogKafkaSource = Maybe CatalogKafkaSource
a} :: CodeGenConfigurationNode)

-- | Specifies a Kinesis data source in the Glue Data Catalog.
codeGenConfigurationNode_catalogKinesisSource :: Lens.Lens' CodeGenConfigurationNode (Prelude.Maybe CatalogKinesisSource)
codeGenConfigurationNode_catalogKinesisSource :: Lens' CodeGenConfigurationNode (Maybe CatalogKinesisSource)
codeGenConfigurationNode_catalogKinesisSource = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CodeGenConfigurationNode' {Maybe CatalogKinesisSource
catalogKinesisSource :: Maybe CatalogKinesisSource
$sel:catalogKinesisSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe CatalogKinesisSource
catalogKinesisSource} -> Maybe CatalogKinesisSource
catalogKinesisSource) (\s :: CodeGenConfigurationNode
s@CodeGenConfigurationNode' {} Maybe CatalogKinesisSource
a -> CodeGenConfigurationNode
s {$sel:catalogKinesisSource:CodeGenConfigurationNode' :: Maybe CatalogKinesisSource
catalogKinesisSource = Maybe CatalogKinesisSource
a} :: CodeGenConfigurationNode)

-- | Specifies a data store in the Glue Data Catalog.
codeGenConfigurationNode_catalogSource :: Lens.Lens' CodeGenConfigurationNode (Prelude.Maybe CatalogSource)
codeGenConfigurationNode_catalogSource :: Lens' CodeGenConfigurationNode (Maybe CatalogSource)
codeGenConfigurationNode_catalogSource = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CodeGenConfigurationNode' {Maybe CatalogSource
catalogSource :: Maybe CatalogSource
$sel:catalogSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe CatalogSource
catalogSource} -> Maybe CatalogSource
catalogSource) (\s :: CodeGenConfigurationNode
s@CodeGenConfigurationNode' {} Maybe CatalogSource
a -> CodeGenConfigurationNode
s {$sel:catalogSource:CodeGenConfigurationNode' :: Maybe CatalogSource
catalogSource = Maybe CatalogSource
a} :: CodeGenConfigurationNode)

-- | Specifies a target that uses a Glue Data Catalog table.
codeGenConfigurationNode_catalogTarget :: Lens.Lens' CodeGenConfigurationNode (Prelude.Maybe BasicCatalogTarget)
codeGenConfigurationNode_catalogTarget :: Lens' CodeGenConfigurationNode (Maybe BasicCatalogTarget)
codeGenConfigurationNode_catalogTarget = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CodeGenConfigurationNode' {Maybe BasicCatalogTarget
catalogTarget :: Maybe BasicCatalogTarget
$sel:catalogTarget:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe BasicCatalogTarget
catalogTarget} -> Maybe BasicCatalogTarget
catalogTarget) (\s :: CodeGenConfigurationNode
s@CodeGenConfigurationNode' {} Maybe BasicCatalogTarget
a -> CodeGenConfigurationNode
s {$sel:catalogTarget:CodeGenConfigurationNode' :: Maybe BasicCatalogTarget
catalogTarget = Maybe BasicCatalogTarget
a} :: CodeGenConfigurationNode)

-- | Specifies a transform that uses custom code you provide to perform the
-- data transformation. The output is a collection of DynamicFrames.
codeGenConfigurationNode_customCode :: Lens.Lens' CodeGenConfigurationNode (Prelude.Maybe CustomCode)
codeGenConfigurationNode_customCode :: Lens' CodeGenConfigurationNode (Maybe CustomCode)
codeGenConfigurationNode_customCode = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CodeGenConfigurationNode' {Maybe CustomCode
customCode :: Maybe CustomCode
$sel:customCode:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe CustomCode
customCode} -> Maybe CustomCode
customCode) (\s :: CodeGenConfigurationNode
s@CodeGenConfigurationNode' {} Maybe CustomCode
a -> CodeGenConfigurationNode
s {$sel:customCode:CodeGenConfigurationNode' :: Maybe CustomCode
customCode = Maybe CustomCode
a} :: CodeGenConfigurationNode)

-- | Specifies an Apache Kafka data store.
codeGenConfigurationNode_directKafkaSource :: Lens.Lens' CodeGenConfigurationNode (Prelude.Maybe DirectKafkaSource)
codeGenConfigurationNode_directKafkaSource :: Lens' CodeGenConfigurationNode (Maybe DirectKafkaSource)
codeGenConfigurationNode_directKafkaSource = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CodeGenConfigurationNode' {Maybe DirectKafkaSource
directKafkaSource :: Maybe DirectKafkaSource
$sel:directKafkaSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe DirectKafkaSource
directKafkaSource} -> Maybe DirectKafkaSource
directKafkaSource) (\s :: CodeGenConfigurationNode
s@CodeGenConfigurationNode' {} Maybe DirectKafkaSource
a -> CodeGenConfigurationNode
s {$sel:directKafkaSource:CodeGenConfigurationNode' :: Maybe DirectKafkaSource
directKafkaSource = Maybe DirectKafkaSource
a} :: CodeGenConfigurationNode)

-- | Specifies a direct Amazon Kinesis data source.
codeGenConfigurationNode_directKinesisSource :: Lens.Lens' CodeGenConfigurationNode (Prelude.Maybe DirectKinesisSource)
codeGenConfigurationNode_directKinesisSource :: Lens' CodeGenConfigurationNode (Maybe DirectKinesisSource)
codeGenConfigurationNode_directKinesisSource = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CodeGenConfigurationNode' {Maybe DirectKinesisSource
directKinesisSource :: Maybe DirectKinesisSource
$sel:directKinesisSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe DirectKinesisSource
directKinesisSource} -> Maybe DirectKinesisSource
directKinesisSource) (\s :: CodeGenConfigurationNode
s@CodeGenConfigurationNode' {} Maybe DirectKinesisSource
a -> CodeGenConfigurationNode
s {$sel:directKinesisSource:CodeGenConfigurationNode' :: Maybe DirectKinesisSource
directKinesisSource = Maybe DirectKinesisSource
a} :: CodeGenConfigurationNode)

-- | Specifies a transform that removes rows of repeating data from a data
-- set.
codeGenConfigurationNode_dropDuplicates :: Lens.Lens' CodeGenConfigurationNode (Prelude.Maybe DropDuplicates)
codeGenConfigurationNode_dropDuplicates :: Lens' CodeGenConfigurationNode (Maybe DropDuplicates)
codeGenConfigurationNode_dropDuplicates = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CodeGenConfigurationNode' {Maybe DropDuplicates
dropDuplicates :: Maybe DropDuplicates
$sel:dropDuplicates:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe DropDuplicates
dropDuplicates} -> Maybe DropDuplicates
dropDuplicates) (\s :: CodeGenConfigurationNode
s@CodeGenConfigurationNode' {} Maybe DropDuplicates
a -> CodeGenConfigurationNode
s {$sel:dropDuplicates:CodeGenConfigurationNode' :: Maybe DropDuplicates
dropDuplicates = Maybe DropDuplicates
a} :: CodeGenConfigurationNode)

-- | Specifies a transform that chooses the data property keys that you want
-- to drop.
codeGenConfigurationNode_dropFields :: Lens.Lens' CodeGenConfigurationNode (Prelude.Maybe DropFields)
codeGenConfigurationNode_dropFields :: Lens' CodeGenConfigurationNode (Maybe DropFields)
codeGenConfigurationNode_dropFields = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CodeGenConfigurationNode' {Maybe DropFields
dropFields :: Maybe DropFields
$sel:dropFields:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe DropFields
dropFields} -> Maybe DropFields
dropFields) (\s :: CodeGenConfigurationNode
s@CodeGenConfigurationNode' {} Maybe DropFields
a -> CodeGenConfigurationNode
s {$sel:dropFields:CodeGenConfigurationNode' :: Maybe DropFields
dropFields = Maybe DropFields
a} :: CodeGenConfigurationNode)

-- | Specifies a transform that removes columns from the dataset if all
-- values in the column are \'null\'. By default, Glue Studio will
-- recognize null objects, but some values such as empty strings, strings
-- that are \"null\", -1 integers or other placeholders such as zeros, are
-- not automatically recognized as nulls.
codeGenConfigurationNode_dropNullFields :: Lens.Lens' CodeGenConfigurationNode (Prelude.Maybe DropNullFields)
codeGenConfigurationNode_dropNullFields :: Lens' CodeGenConfigurationNode (Maybe DropNullFields)
codeGenConfigurationNode_dropNullFields = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CodeGenConfigurationNode' {Maybe DropNullFields
dropNullFields :: Maybe DropNullFields
$sel:dropNullFields:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe DropNullFields
dropNullFields} -> Maybe DropNullFields
dropNullFields) (\s :: CodeGenConfigurationNode
s@CodeGenConfigurationNode' {} Maybe DropNullFields
a -> CodeGenConfigurationNode
s {$sel:dropNullFields:CodeGenConfigurationNode' :: Maybe DropNullFields
dropNullFields = Maybe DropNullFields
a} :: CodeGenConfigurationNode)

-- | Specifies a custom visual transform created by a user.
codeGenConfigurationNode_dynamicTransform :: Lens.Lens' CodeGenConfigurationNode (Prelude.Maybe DynamicTransform)
codeGenConfigurationNode_dynamicTransform :: Lens' CodeGenConfigurationNode (Maybe DynamicTransform)
codeGenConfigurationNode_dynamicTransform = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CodeGenConfigurationNode' {Maybe DynamicTransform
dynamicTransform :: Maybe DynamicTransform
$sel:dynamicTransform:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe DynamicTransform
dynamicTransform} -> Maybe DynamicTransform
dynamicTransform) (\s :: CodeGenConfigurationNode
s@CodeGenConfigurationNode' {} Maybe DynamicTransform
a -> CodeGenConfigurationNode
s {$sel:dynamicTransform:CodeGenConfigurationNode' :: Maybe DynamicTransform
dynamicTransform = Maybe DynamicTransform
a} :: CodeGenConfigurationNode)

-- | Undocumented member.
codeGenConfigurationNode_dynamoDBCatalogSource :: Lens.Lens' CodeGenConfigurationNode (Prelude.Maybe DynamoDBCatalogSource)
codeGenConfigurationNode_dynamoDBCatalogSource :: Lens' CodeGenConfigurationNode (Maybe DynamoDBCatalogSource)
codeGenConfigurationNode_dynamoDBCatalogSource = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CodeGenConfigurationNode' {Maybe DynamoDBCatalogSource
dynamoDBCatalogSource :: Maybe DynamoDBCatalogSource
$sel:dynamoDBCatalogSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe DynamoDBCatalogSource
dynamoDBCatalogSource} -> Maybe DynamoDBCatalogSource
dynamoDBCatalogSource) (\s :: CodeGenConfigurationNode
s@CodeGenConfigurationNode' {} Maybe DynamoDBCatalogSource
a -> CodeGenConfigurationNode
s {$sel:dynamoDBCatalogSource:CodeGenConfigurationNode' :: Maybe DynamoDBCatalogSource
dynamoDBCatalogSource = Maybe DynamoDBCatalogSource
a} :: CodeGenConfigurationNode)

-- | Specifies your data quality evaluation criteria.
codeGenConfigurationNode_evaluateDataQuality :: Lens.Lens' CodeGenConfigurationNode (Prelude.Maybe EvaluateDataQuality)
codeGenConfigurationNode_evaluateDataQuality :: Lens' CodeGenConfigurationNode (Maybe EvaluateDataQuality)
codeGenConfigurationNode_evaluateDataQuality = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CodeGenConfigurationNode' {Maybe EvaluateDataQuality
evaluateDataQuality :: Maybe EvaluateDataQuality
$sel:evaluateDataQuality:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe EvaluateDataQuality
evaluateDataQuality} -> Maybe EvaluateDataQuality
evaluateDataQuality) (\s :: CodeGenConfigurationNode
s@CodeGenConfigurationNode' {} Maybe EvaluateDataQuality
a -> CodeGenConfigurationNode
s {$sel:evaluateDataQuality:CodeGenConfigurationNode' :: Maybe EvaluateDataQuality
evaluateDataQuality = Maybe EvaluateDataQuality
a} :: CodeGenConfigurationNode)

-- | Specifies a transform that locates records in the dataset that have
-- missing values and adds a new field with a value determined by
-- imputation. The input data set is used to train the machine learning
-- model that determines what the missing value should be.
codeGenConfigurationNode_fillMissingValues :: Lens.Lens' CodeGenConfigurationNode (Prelude.Maybe FillMissingValues)
codeGenConfigurationNode_fillMissingValues :: Lens' CodeGenConfigurationNode (Maybe FillMissingValues)
codeGenConfigurationNode_fillMissingValues = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CodeGenConfigurationNode' {Maybe FillMissingValues
fillMissingValues :: Maybe FillMissingValues
$sel:fillMissingValues:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe FillMissingValues
fillMissingValues} -> Maybe FillMissingValues
fillMissingValues) (\s :: CodeGenConfigurationNode
s@CodeGenConfigurationNode' {} Maybe FillMissingValues
a -> CodeGenConfigurationNode
s {$sel:fillMissingValues:CodeGenConfigurationNode' :: Maybe FillMissingValues
fillMissingValues = Maybe FillMissingValues
a} :: CodeGenConfigurationNode)

-- | Specifies a transform that splits a dataset into two, based on a filter
-- condition.
codeGenConfigurationNode_filter :: Lens.Lens' CodeGenConfigurationNode (Prelude.Maybe Filter)
codeGenConfigurationNode_filter :: Lens' CodeGenConfigurationNode (Maybe Filter)
codeGenConfigurationNode_filter = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CodeGenConfigurationNode' {Maybe Filter
filter' :: Maybe Filter
$sel:filter':CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe Filter
filter'} -> Maybe Filter
filter') (\s :: CodeGenConfigurationNode
s@CodeGenConfigurationNode' {} Maybe Filter
a -> CodeGenConfigurationNode
s {$sel:filter':CodeGenConfigurationNode' :: Maybe Filter
filter' = Maybe Filter
a} :: CodeGenConfigurationNode)

-- | Specifies a data source in a goverened Data Catalog.
codeGenConfigurationNode_governedCatalogSource :: Lens.Lens' CodeGenConfigurationNode (Prelude.Maybe GovernedCatalogSource)
codeGenConfigurationNode_governedCatalogSource :: Lens' CodeGenConfigurationNode (Maybe GovernedCatalogSource)
codeGenConfigurationNode_governedCatalogSource = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CodeGenConfigurationNode' {Maybe GovernedCatalogSource
governedCatalogSource :: Maybe GovernedCatalogSource
$sel:governedCatalogSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe GovernedCatalogSource
governedCatalogSource} -> Maybe GovernedCatalogSource
governedCatalogSource) (\s :: CodeGenConfigurationNode
s@CodeGenConfigurationNode' {} Maybe GovernedCatalogSource
a -> CodeGenConfigurationNode
s {$sel:governedCatalogSource:CodeGenConfigurationNode' :: Maybe GovernedCatalogSource
governedCatalogSource = Maybe GovernedCatalogSource
a} :: CodeGenConfigurationNode)

-- | Specifies a data target that writes to a goverened catalog.
codeGenConfigurationNode_governedCatalogTarget :: Lens.Lens' CodeGenConfigurationNode (Prelude.Maybe GovernedCatalogTarget)
codeGenConfigurationNode_governedCatalogTarget :: Lens' CodeGenConfigurationNode (Maybe GovernedCatalogTarget)
codeGenConfigurationNode_governedCatalogTarget = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CodeGenConfigurationNode' {Maybe GovernedCatalogTarget
governedCatalogTarget :: Maybe GovernedCatalogTarget
$sel:governedCatalogTarget:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe GovernedCatalogTarget
governedCatalogTarget} -> Maybe GovernedCatalogTarget
governedCatalogTarget) (\s :: CodeGenConfigurationNode
s@CodeGenConfigurationNode' {} Maybe GovernedCatalogTarget
a -> CodeGenConfigurationNode
s {$sel:governedCatalogTarget:CodeGenConfigurationNode' :: Maybe GovernedCatalogTarget
governedCatalogTarget = Maybe GovernedCatalogTarget
a} :: CodeGenConfigurationNode)

-- | Specifies a connector to a JDBC data source.
codeGenConfigurationNode_jDBCConnectorSource :: Lens.Lens' CodeGenConfigurationNode (Prelude.Maybe JDBCConnectorSource)
codeGenConfigurationNode_jDBCConnectorSource :: Lens' CodeGenConfigurationNode (Maybe JDBCConnectorSource)
codeGenConfigurationNode_jDBCConnectorSource = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CodeGenConfigurationNode' {Maybe JDBCConnectorSource
jDBCConnectorSource :: Maybe JDBCConnectorSource
$sel:jDBCConnectorSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe JDBCConnectorSource
jDBCConnectorSource} -> Maybe JDBCConnectorSource
jDBCConnectorSource) (\s :: CodeGenConfigurationNode
s@CodeGenConfigurationNode' {} Maybe JDBCConnectorSource
a -> CodeGenConfigurationNode
s {$sel:jDBCConnectorSource:CodeGenConfigurationNode' :: Maybe JDBCConnectorSource
jDBCConnectorSource = Maybe JDBCConnectorSource
a} :: CodeGenConfigurationNode)

-- | Specifies a data target that writes to Amazon S3 in Apache Parquet
-- columnar storage.
codeGenConfigurationNode_jDBCConnectorTarget :: Lens.Lens' CodeGenConfigurationNode (Prelude.Maybe JDBCConnectorTarget)
codeGenConfigurationNode_jDBCConnectorTarget :: Lens' CodeGenConfigurationNode (Maybe JDBCConnectorTarget)
codeGenConfigurationNode_jDBCConnectorTarget = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CodeGenConfigurationNode' {Maybe JDBCConnectorTarget
jDBCConnectorTarget :: Maybe JDBCConnectorTarget
$sel:jDBCConnectorTarget:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe JDBCConnectorTarget
jDBCConnectorTarget} -> Maybe JDBCConnectorTarget
jDBCConnectorTarget) (\s :: CodeGenConfigurationNode
s@CodeGenConfigurationNode' {} Maybe JDBCConnectorTarget
a -> CodeGenConfigurationNode
s {$sel:jDBCConnectorTarget:CodeGenConfigurationNode' :: Maybe JDBCConnectorTarget
jDBCConnectorTarget = Maybe JDBCConnectorTarget
a} :: CodeGenConfigurationNode)

-- | Specifies a transform that joins two datasets into one dataset using a
-- comparison phrase on the specified data property keys. You can use
-- inner, outer, left, right, left semi, and left anti joins.
codeGenConfigurationNode_join :: Lens.Lens' CodeGenConfigurationNode (Prelude.Maybe Join)
codeGenConfigurationNode_join :: Lens' CodeGenConfigurationNode (Maybe Join)
codeGenConfigurationNode_join = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CodeGenConfigurationNode' {Maybe Join
join :: Maybe Join
$sel:join:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe Join
join} -> Maybe Join
join) (\s :: CodeGenConfigurationNode
s@CodeGenConfigurationNode' {} Maybe Join
a -> CodeGenConfigurationNode
s {$sel:join:CodeGenConfigurationNode' :: Maybe Join
join = Maybe Join
a} :: CodeGenConfigurationNode)

-- | Specifies a transform that merges a @DynamicFrame@ with a staging
-- @DynamicFrame@ based on the specified primary keys to identify records.
-- Duplicate records (records with the same primary keys) are not
-- de-duplicated.
codeGenConfigurationNode_merge :: Lens.Lens' CodeGenConfigurationNode (Prelude.Maybe Merge)
codeGenConfigurationNode_merge :: Lens' CodeGenConfigurationNode (Maybe Merge)
codeGenConfigurationNode_merge = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CodeGenConfigurationNode' {Maybe Merge
merge :: Maybe Merge
$sel:merge:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe Merge
merge} -> Maybe Merge
merge) (\s :: CodeGenConfigurationNode
s@CodeGenConfigurationNode' {} Maybe Merge
a -> CodeGenConfigurationNode
s {$sel:merge:CodeGenConfigurationNode' :: Maybe Merge
merge = Maybe Merge
a} :: CodeGenConfigurationNode)

-- | Specifies a Microsoft SQL server data source in the Glue Data Catalog.
codeGenConfigurationNode_microsoftSQLServerCatalogSource :: Lens.Lens' CodeGenConfigurationNode (Prelude.Maybe MicrosoftSQLServerCatalogSource)
codeGenConfigurationNode_microsoftSQLServerCatalogSource :: Lens'
  CodeGenConfigurationNode (Maybe MicrosoftSQLServerCatalogSource)
codeGenConfigurationNode_microsoftSQLServerCatalogSource = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CodeGenConfigurationNode' {Maybe MicrosoftSQLServerCatalogSource
microsoftSQLServerCatalogSource :: Maybe MicrosoftSQLServerCatalogSource
$sel:microsoftSQLServerCatalogSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe MicrosoftSQLServerCatalogSource
microsoftSQLServerCatalogSource} -> Maybe MicrosoftSQLServerCatalogSource
microsoftSQLServerCatalogSource) (\s :: CodeGenConfigurationNode
s@CodeGenConfigurationNode' {} Maybe MicrosoftSQLServerCatalogSource
a -> CodeGenConfigurationNode
s {$sel:microsoftSQLServerCatalogSource:CodeGenConfigurationNode' :: Maybe MicrosoftSQLServerCatalogSource
microsoftSQLServerCatalogSource = Maybe MicrosoftSQLServerCatalogSource
a} :: CodeGenConfigurationNode)

-- | Specifies a target that uses Microsoft SQL.
codeGenConfigurationNode_microsoftSQLServerCatalogTarget :: Lens.Lens' CodeGenConfigurationNode (Prelude.Maybe MicrosoftSQLServerCatalogTarget)
codeGenConfigurationNode_microsoftSQLServerCatalogTarget :: Lens'
  CodeGenConfigurationNode (Maybe MicrosoftSQLServerCatalogTarget)
codeGenConfigurationNode_microsoftSQLServerCatalogTarget = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CodeGenConfigurationNode' {Maybe MicrosoftSQLServerCatalogTarget
microsoftSQLServerCatalogTarget :: Maybe MicrosoftSQLServerCatalogTarget
$sel:microsoftSQLServerCatalogTarget:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe MicrosoftSQLServerCatalogTarget
microsoftSQLServerCatalogTarget} -> Maybe MicrosoftSQLServerCatalogTarget
microsoftSQLServerCatalogTarget) (\s :: CodeGenConfigurationNode
s@CodeGenConfigurationNode' {} Maybe MicrosoftSQLServerCatalogTarget
a -> CodeGenConfigurationNode
s {$sel:microsoftSQLServerCatalogTarget:CodeGenConfigurationNode' :: Maybe MicrosoftSQLServerCatalogTarget
microsoftSQLServerCatalogTarget = Maybe MicrosoftSQLServerCatalogTarget
a} :: CodeGenConfigurationNode)

-- | Specifies a MySQL data source in the Glue Data Catalog.
codeGenConfigurationNode_mySQLCatalogSource :: Lens.Lens' CodeGenConfigurationNode (Prelude.Maybe MySQLCatalogSource)
codeGenConfigurationNode_mySQLCatalogSource :: Lens' CodeGenConfigurationNode (Maybe MySQLCatalogSource)
codeGenConfigurationNode_mySQLCatalogSource = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CodeGenConfigurationNode' {Maybe MySQLCatalogSource
mySQLCatalogSource :: Maybe MySQLCatalogSource
$sel:mySQLCatalogSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe MySQLCatalogSource
mySQLCatalogSource} -> Maybe MySQLCatalogSource
mySQLCatalogSource) (\s :: CodeGenConfigurationNode
s@CodeGenConfigurationNode' {} Maybe MySQLCatalogSource
a -> CodeGenConfigurationNode
s {$sel:mySQLCatalogSource:CodeGenConfigurationNode' :: Maybe MySQLCatalogSource
mySQLCatalogSource = Maybe MySQLCatalogSource
a} :: CodeGenConfigurationNode)

-- | Specifies a target that uses MySQL.
codeGenConfigurationNode_mySQLCatalogTarget :: Lens.Lens' CodeGenConfigurationNode (Prelude.Maybe MySQLCatalogTarget)
codeGenConfigurationNode_mySQLCatalogTarget :: Lens' CodeGenConfigurationNode (Maybe MySQLCatalogTarget)
codeGenConfigurationNode_mySQLCatalogTarget = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CodeGenConfigurationNode' {Maybe MySQLCatalogTarget
mySQLCatalogTarget :: Maybe MySQLCatalogTarget
$sel:mySQLCatalogTarget:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe MySQLCatalogTarget
mySQLCatalogTarget} -> Maybe MySQLCatalogTarget
mySQLCatalogTarget) (\s :: CodeGenConfigurationNode
s@CodeGenConfigurationNode' {} Maybe MySQLCatalogTarget
a -> CodeGenConfigurationNode
s {$sel:mySQLCatalogTarget:CodeGenConfigurationNode' :: Maybe MySQLCatalogTarget
mySQLCatalogTarget = Maybe MySQLCatalogTarget
a} :: CodeGenConfigurationNode)

-- | Specifies an Oracle data source in the Glue Data Catalog.
codeGenConfigurationNode_oracleSQLCatalogSource :: Lens.Lens' CodeGenConfigurationNode (Prelude.Maybe OracleSQLCatalogSource)
codeGenConfigurationNode_oracleSQLCatalogSource :: Lens' CodeGenConfigurationNode (Maybe OracleSQLCatalogSource)
codeGenConfigurationNode_oracleSQLCatalogSource = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CodeGenConfigurationNode' {Maybe OracleSQLCatalogSource
oracleSQLCatalogSource :: Maybe OracleSQLCatalogSource
$sel:oracleSQLCatalogSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe OracleSQLCatalogSource
oracleSQLCatalogSource} -> Maybe OracleSQLCatalogSource
oracleSQLCatalogSource) (\s :: CodeGenConfigurationNode
s@CodeGenConfigurationNode' {} Maybe OracleSQLCatalogSource
a -> CodeGenConfigurationNode
s {$sel:oracleSQLCatalogSource:CodeGenConfigurationNode' :: Maybe OracleSQLCatalogSource
oracleSQLCatalogSource = Maybe OracleSQLCatalogSource
a} :: CodeGenConfigurationNode)

-- | Specifies a target that uses Oracle SQL.
codeGenConfigurationNode_oracleSQLCatalogTarget :: Lens.Lens' CodeGenConfigurationNode (Prelude.Maybe OracleSQLCatalogTarget)
codeGenConfigurationNode_oracleSQLCatalogTarget :: Lens' CodeGenConfigurationNode (Maybe OracleSQLCatalogTarget)
codeGenConfigurationNode_oracleSQLCatalogTarget = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CodeGenConfigurationNode' {Maybe OracleSQLCatalogTarget
oracleSQLCatalogTarget :: Maybe OracleSQLCatalogTarget
$sel:oracleSQLCatalogTarget:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe OracleSQLCatalogTarget
oracleSQLCatalogTarget} -> Maybe OracleSQLCatalogTarget
oracleSQLCatalogTarget) (\s :: CodeGenConfigurationNode
s@CodeGenConfigurationNode' {} Maybe OracleSQLCatalogTarget
a -> CodeGenConfigurationNode
s {$sel:oracleSQLCatalogTarget:CodeGenConfigurationNode' :: Maybe OracleSQLCatalogTarget
oracleSQLCatalogTarget = Maybe OracleSQLCatalogTarget
a} :: CodeGenConfigurationNode)

-- | Specifies a transform that identifies, removes or masks PII data.
codeGenConfigurationNode_pIIDetection :: Lens.Lens' CodeGenConfigurationNode (Prelude.Maybe PIIDetection)
codeGenConfigurationNode_pIIDetection :: Lens' CodeGenConfigurationNode (Maybe PIIDetection)
codeGenConfigurationNode_pIIDetection = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CodeGenConfigurationNode' {Maybe PIIDetection
pIIDetection :: Maybe PIIDetection
$sel:pIIDetection:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe PIIDetection
pIIDetection} -> Maybe PIIDetection
pIIDetection) (\s :: CodeGenConfigurationNode
s@CodeGenConfigurationNode' {} Maybe PIIDetection
a -> CodeGenConfigurationNode
s {$sel:pIIDetection:CodeGenConfigurationNode' :: Maybe PIIDetection
pIIDetection = Maybe PIIDetection
a} :: CodeGenConfigurationNode)

-- | Specifies a PostgresSQL data source in the Glue Data Catalog.
codeGenConfigurationNode_postgreSQLCatalogSource :: Lens.Lens' CodeGenConfigurationNode (Prelude.Maybe PostgreSQLCatalogSource)
codeGenConfigurationNode_postgreSQLCatalogSource :: Lens' CodeGenConfigurationNode (Maybe PostgreSQLCatalogSource)
codeGenConfigurationNode_postgreSQLCatalogSource = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CodeGenConfigurationNode' {Maybe PostgreSQLCatalogSource
postgreSQLCatalogSource :: Maybe PostgreSQLCatalogSource
$sel:postgreSQLCatalogSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe PostgreSQLCatalogSource
postgreSQLCatalogSource} -> Maybe PostgreSQLCatalogSource
postgreSQLCatalogSource) (\s :: CodeGenConfigurationNode
s@CodeGenConfigurationNode' {} Maybe PostgreSQLCatalogSource
a -> CodeGenConfigurationNode
s {$sel:postgreSQLCatalogSource:CodeGenConfigurationNode' :: Maybe PostgreSQLCatalogSource
postgreSQLCatalogSource = Maybe PostgreSQLCatalogSource
a} :: CodeGenConfigurationNode)

-- | Specifies a target that uses Postgres SQL.
codeGenConfigurationNode_postgreSQLCatalogTarget :: Lens.Lens' CodeGenConfigurationNode (Prelude.Maybe PostgreSQLCatalogTarget)
codeGenConfigurationNode_postgreSQLCatalogTarget :: Lens' CodeGenConfigurationNode (Maybe PostgreSQLCatalogTarget)
codeGenConfigurationNode_postgreSQLCatalogTarget = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CodeGenConfigurationNode' {Maybe PostgreSQLCatalogTarget
postgreSQLCatalogTarget :: Maybe PostgreSQLCatalogTarget
$sel:postgreSQLCatalogTarget:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe PostgreSQLCatalogTarget
postgreSQLCatalogTarget} -> Maybe PostgreSQLCatalogTarget
postgreSQLCatalogTarget) (\s :: CodeGenConfigurationNode
s@CodeGenConfigurationNode' {} Maybe PostgreSQLCatalogTarget
a -> CodeGenConfigurationNode
s {$sel:postgreSQLCatalogTarget:CodeGenConfigurationNode' :: Maybe PostgreSQLCatalogTarget
postgreSQLCatalogTarget = Maybe PostgreSQLCatalogTarget
a} :: CodeGenConfigurationNode)

-- | Specifies an Amazon Redshift data store.
codeGenConfigurationNode_redshiftSource :: Lens.Lens' CodeGenConfigurationNode (Prelude.Maybe RedshiftSource)
codeGenConfigurationNode_redshiftSource :: Lens' CodeGenConfigurationNode (Maybe RedshiftSource)
codeGenConfigurationNode_redshiftSource = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CodeGenConfigurationNode' {Maybe RedshiftSource
redshiftSource :: Maybe RedshiftSource
$sel:redshiftSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe RedshiftSource
redshiftSource} -> Maybe RedshiftSource
redshiftSource) (\s :: CodeGenConfigurationNode
s@CodeGenConfigurationNode' {} Maybe RedshiftSource
a -> CodeGenConfigurationNode
s {$sel:redshiftSource:CodeGenConfigurationNode' :: Maybe RedshiftSource
redshiftSource = Maybe RedshiftSource
a} :: CodeGenConfigurationNode)

-- | Specifies a target that uses Amazon Redshift.
codeGenConfigurationNode_redshiftTarget :: Lens.Lens' CodeGenConfigurationNode (Prelude.Maybe RedshiftTarget)
codeGenConfigurationNode_redshiftTarget :: Lens' CodeGenConfigurationNode (Maybe RedshiftTarget)
codeGenConfigurationNode_redshiftTarget = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CodeGenConfigurationNode' {Maybe RedshiftTarget
redshiftTarget :: Maybe RedshiftTarget
$sel:redshiftTarget:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe RedshiftTarget
redshiftTarget} -> Maybe RedshiftTarget
redshiftTarget) (\s :: CodeGenConfigurationNode
s@CodeGenConfigurationNode' {} Maybe RedshiftTarget
a -> CodeGenConfigurationNode
s {$sel:redshiftTarget:CodeGenConfigurationNode' :: Maybe RedshiftTarget
redshiftTarget = Maybe RedshiftTarget
a} :: CodeGenConfigurationNode)

-- | Undocumented member.
codeGenConfigurationNode_relationalCatalogSource :: Lens.Lens' CodeGenConfigurationNode (Prelude.Maybe RelationalCatalogSource)
codeGenConfigurationNode_relationalCatalogSource :: Lens' CodeGenConfigurationNode (Maybe RelationalCatalogSource)
codeGenConfigurationNode_relationalCatalogSource = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CodeGenConfigurationNode' {Maybe RelationalCatalogSource
relationalCatalogSource :: Maybe RelationalCatalogSource
$sel:relationalCatalogSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe RelationalCatalogSource
relationalCatalogSource} -> Maybe RelationalCatalogSource
relationalCatalogSource) (\s :: CodeGenConfigurationNode
s@CodeGenConfigurationNode' {} Maybe RelationalCatalogSource
a -> CodeGenConfigurationNode
s {$sel:relationalCatalogSource:CodeGenConfigurationNode' :: Maybe RelationalCatalogSource
relationalCatalogSource = Maybe RelationalCatalogSource
a} :: CodeGenConfigurationNode)

-- | Specifies a transform that renames a single data property key.
codeGenConfigurationNode_renameField :: Lens.Lens' CodeGenConfigurationNode (Prelude.Maybe RenameField)
codeGenConfigurationNode_renameField :: Lens' CodeGenConfigurationNode (Maybe RenameField)
codeGenConfigurationNode_renameField = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CodeGenConfigurationNode' {Maybe RenameField
renameField :: Maybe RenameField
$sel:renameField:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe RenameField
renameField} -> Maybe RenameField
renameField) (\s :: CodeGenConfigurationNode
s@CodeGenConfigurationNode' {} Maybe RenameField
a -> CodeGenConfigurationNode
s {$sel:renameField:CodeGenConfigurationNode' :: Maybe RenameField
renameField = Maybe RenameField
a} :: CodeGenConfigurationNode)

-- | Specifies an Amazon S3 data store in the Glue Data Catalog.
codeGenConfigurationNode_s3CatalogSource :: Lens.Lens' CodeGenConfigurationNode (Prelude.Maybe S3CatalogSource)
codeGenConfigurationNode_s3CatalogSource :: Lens' CodeGenConfigurationNode (Maybe S3CatalogSource)
codeGenConfigurationNode_s3CatalogSource = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CodeGenConfigurationNode' {Maybe S3CatalogSource
s3CatalogSource :: Maybe S3CatalogSource
$sel:s3CatalogSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe S3CatalogSource
s3CatalogSource} -> Maybe S3CatalogSource
s3CatalogSource) (\s :: CodeGenConfigurationNode
s@CodeGenConfigurationNode' {} Maybe S3CatalogSource
a -> CodeGenConfigurationNode
s {$sel:s3CatalogSource:CodeGenConfigurationNode' :: Maybe S3CatalogSource
s3CatalogSource = Maybe S3CatalogSource
a} :: CodeGenConfigurationNode)

-- | Specifies a data target that writes to Amazon S3 using the Glue Data
-- Catalog.
codeGenConfigurationNode_s3CatalogTarget :: Lens.Lens' CodeGenConfigurationNode (Prelude.Maybe S3CatalogTarget)
codeGenConfigurationNode_s3CatalogTarget :: Lens' CodeGenConfigurationNode (Maybe S3CatalogTarget)
codeGenConfigurationNode_s3CatalogTarget = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CodeGenConfigurationNode' {Maybe S3CatalogTarget
s3CatalogTarget :: Maybe S3CatalogTarget
$sel:s3CatalogTarget:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe S3CatalogTarget
s3CatalogTarget} -> Maybe S3CatalogTarget
s3CatalogTarget) (\s :: CodeGenConfigurationNode
s@CodeGenConfigurationNode' {} Maybe S3CatalogTarget
a -> CodeGenConfigurationNode
s {$sel:s3CatalogTarget:CodeGenConfigurationNode' :: Maybe S3CatalogTarget
s3CatalogTarget = Maybe S3CatalogTarget
a} :: CodeGenConfigurationNode)

-- | Specifies a command-separated value (CSV) data store stored in Amazon
-- S3.
codeGenConfigurationNode_s3CsvSource :: Lens.Lens' CodeGenConfigurationNode (Prelude.Maybe S3CsvSource)
codeGenConfigurationNode_s3CsvSource :: Lens' CodeGenConfigurationNode (Maybe S3CsvSource)
codeGenConfigurationNode_s3CsvSource = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CodeGenConfigurationNode' {Maybe S3CsvSource
s3CsvSource :: Maybe S3CsvSource
$sel:s3CsvSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe S3CsvSource
s3CsvSource} -> Maybe S3CsvSource
s3CsvSource) (\s :: CodeGenConfigurationNode
s@CodeGenConfigurationNode' {} Maybe S3CsvSource
a -> CodeGenConfigurationNode
s {$sel:s3CsvSource:CodeGenConfigurationNode' :: Maybe S3CsvSource
s3CsvSource = Maybe S3CsvSource
a} :: CodeGenConfigurationNode)

-- | Specifies a data target that writes to Amazon S3.
codeGenConfigurationNode_s3DirectTarget :: Lens.Lens' CodeGenConfigurationNode (Prelude.Maybe S3DirectTarget)
codeGenConfigurationNode_s3DirectTarget :: Lens' CodeGenConfigurationNode (Maybe S3DirectTarget)
codeGenConfigurationNode_s3DirectTarget = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CodeGenConfigurationNode' {Maybe S3DirectTarget
s3DirectTarget :: Maybe S3DirectTarget
$sel:s3DirectTarget:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe S3DirectTarget
s3DirectTarget} -> Maybe S3DirectTarget
s3DirectTarget) (\s :: CodeGenConfigurationNode
s@CodeGenConfigurationNode' {} Maybe S3DirectTarget
a -> CodeGenConfigurationNode
s {$sel:s3DirectTarget:CodeGenConfigurationNode' :: Maybe S3DirectTarget
s3DirectTarget = Maybe S3DirectTarget
a} :: CodeGenConfigurationNode)

-- | Specifies a data target that writes to Amazon S3 in Apache Parquet
-- columnar storage.
codeGenConfigurationNode_s3GlueParquetTarget :: Lens.Lens' CodeGenConfigurationNode (Prelude.Maybe S3GlueParquetTarget)
codeGenConfigurationNode_s3GlueParquetTarget :: Lens' CodeGenConfigurationNode (Maybe S3GlueParquetTarget)
codeGenConfigurationNode_s3GlueParquetTarget = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CodeGenConfigurationNode' {Maybe S3GlueParquetTarget
s3GlueParquetTarget :: Maybe S3GlueParquetTarget
$sel:s3GlueParquetTarget:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe S3GlueParquetTarget
s3GlueParquetTarget} -> Maybe S3GlueParquetTarget
s3GlueParquetTarget) (\s :: CodeGenConfigurationNode
s@CodeGenConfigurationNode' {} Maybe S3GlueParquetTarget
a -> CodeGenConfigurationNode
s {$sel:s3GlueParquetTarget:CodeGenConfigurationNode' :: Maybe S3GlueParquetTarget
s3GlueParquetTarget = Maybe S3GlueParquetTarget
a} :: CodeGenConfigurationNode)

-- | Specifies a JSON data store stored in Amazon S3.
codeGenConfigurationNode_s3JsonSource :: Lens.Lens' CodeGenConfigurationNode (Prelude.Maybe S3JsonSource)
codeGenConfigurationNode_s3JsonSource :: Lens' CodeGenConfigurationNode (Maybe S3JsonSource)
codeGenConfigurationNode_s3JsonSource = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CodeGenConfigurationNode' {Maybe S3JsonSource
s3JsonSource :: Maybe S3JsonSource
$sel:s3JsonSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe S3JsonSource
s3JsonSource} -> Maybe S3JsonSource
s3JsonSource) (\s :: CodeGenConfigurationNode
s@CodeGenConfigurationNode' {} Maybe S3JsonSource
a -> CodeGenConfigurationNode
s {$sel:s3JsonSource:CodeGenConfigurationNode' :: Maybe S3JsonSource
s3JsonSource = Maybe S3JsonSource
a} :: CodeGenConfigurationNode)

-- | Specifies an Apache Parquet data store stored in Amazon S3.
codeGenConfigurationNode_s3ParquetSource :: Lens.Lens' CodeGenConfigurationNode (Prelude.Maybe S3ParquetSource)
codeGenConfigurationNode_s3ParquetSource :: Lens' CodeGenConfigurationNode (Maybe S3ParquetSource)
codeGenConfigurationNode_s3ParquetSource = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CodeGenConfigurationNode' {Maybe S3ParquetSource
s3ParquetSource :: Maybe S3ParquetSource
$sel:s3ParquetSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe S3ParquetSource
s3ParquetSource} -> Maybe S3ParquetSource
s3ParquetSource) (\s :: CodeGenConfigurationNode
s@CodeGenConfigurationNode' {} Maybe S3ParquetSource
a -> CodeGenConfigurationNode
s {$sel:s3ParquetSource:CodeGenConfigurationNode' :: Maybe S3ParquetSource
s3ParquetSource = Maybe S3ParquetSource
a} :: CodeGenConfigurationNode)

-- | Specifies a transform that chooses the data property keys that you want
-- to keep.
codeGenConfigurationNode_selectFields :: Lens.Lens' CodeGenConfigurationNode (Prelude.Maybe SelectFields)
codeGenConfigurationNode_selectFields :: Lens' CodeGenConfigurationNode (Maybe SelectFields)
codeGenConfigurationNode_selectFields = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CodeGenConfigurationNode' {Maybe SelectFields
selectFields :: Maybe SelectFields
$sel:selectFields:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe SelectFields
selectFields} -> Maybe SelectFields
selectFields) (\s :: CodeGenConfigurationNode
s@CodeGenConfigurationNode' {} Maybe SelectFields
a -> CodeGenConfigurationNode
s {$sel:selectFields:CodeGenConfigurationNode' :: Maybe SelectFields
selectFields = Maybe SelectFields
a} :: CodeGenConfigurationNode)

-- | Specifies a transform that chooses one @DynamicFrame@ from a collection
-- of @DynamicFrames@. The output is the selected @DynamicFrame@
codeGenConfigurationNode_selectFromCollection :: Lens.Lens' CodeGenConfigurationNode (Prelude.Maybe SelectFromCollection)
codeGenConfigurationNode_selectFromCollection :: Lens' CodeGenConfigurationNode (Maybe SelectFromCollection)
codeGenConfigurationNode_selectFromCollection = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CodeGenConfigurationNode' {Maybe SelectFromCollection
selectFromCollection :: Maybe SelectFromCollection
$sel:selectFromCollection:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe SelectFromCollection
selectFromCollection} -> Maybe SelectFromCollection
selectFromCollection) (\s :: CodeGenConfigurationNode
s@CodeGenConfigurationNode' {} Maybe SelectFromCollection
a -> CodeGenConfigurationNode
s {$sel:selectFromCollection:CodeGenConfigurationNode' :: Maybe SelectFromCollection
selectFromCollection = Maybe SelectFromCollection
a} :: CodeGenConfigurationNode)

-- | Specifies a connector to an Apache Spark data source.
codeGenConfigurationNode_sparkConnectorSource :: Lens.Lens' CodeGenConfigurationNode (Prelude.Maybe SparkConnectorSource)
codeGenConfigurationNode_sparkConnectorSource :: Lens' CodeGenConfigurationNode (Maybe SparkConnectorSource)
codeGenConfigurationNode_sparkConnectorSource = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CodeGenConfigurationNode' {Maybe SparkConnectorSource
sparkConnectorSource :: Maybe SparkConnectorSource
$sel:sparkConnectorSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe SparkConnectorSource
sparkConnectorSource} -> Maybe SparkConnectorSource
sparkConnectorSource) (\s :: CodeGenConfigurationNode
s@CodeGenConfigurationNode' {} Maybe SparkConnectorSource
a -> CodeGenConfigurationNode
s {$sel:sparkConnectorSource:CodeGenConfigurationNode' :: Maybe SparkConnectorSource
sparkConnectorSource = Maybe SparkConnectorSource
a} :: CodeGenConfigurationNode)

-- | Specifies a target that uses an Apache Spark connector.
codeGenConfigurationNode_sparkConnectorTarget :: Lens.Lens' CodeGenConfigurationNode (Prelude.Maybe SparkConnectorTarget)
codeGenConfigurationNode_sparkConnectorTarget :: Lens' CodeGenConfigurationNode (Maybe SparkConnectorTarget)
codeGenConfigurationNode_sparkConnectorTarget = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CodeGenConfigurationNode' {Maybe SparkConnectorTarget
sparkConnectorTarget :: Maybe SparkConnectorTarget
$sel:sparkConnectorTarget:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe SparkConnectorTarget
sparkConnectorTarget} -> Maybe SparkConnectorTarget
sparkConnectorTarget) (\s :: CodeGenConfigurationNode
s@CodeGenConfigurationNode' {} Maybe SparkConnectorTarget
a -> CodeGenConfigurationNode
s {$sel:sparkConnectorTarget:CodeGenConfigurationNode' :: Maybe SparkConnectorTarget
sparkConnectorTarget = Maybe SparkConnectorTarget
a} :: CodeGenConfigurationNode)

-- | Specifies a transform where you enter a SQL query using Spark SQL syntax
-- to transform the data. The output is a single @DynamicFrame@.
codeGenConfigurationNode_sparkSQL :: Lens.Lens' CodeGenConfigurationNode (Prelude.Maybe SparkSQL)
codeGenConfigurationNode_sparkSQL :: Lens' CodeGenConfigurationNode (Maybe SparkSQL)
codeGenConfigurationNode_sparkSQL = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CodeGenConfigurationNode' {Maybe SparkSQL
sparkSQL :: Maybe SparkSQL
$sel:sparkSQL:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe SparkSQL
sparkSQL} -> Maybe SparkSQL
sparkSQL) (\s :: CodeGenConfigurationNode
s@CodeGenConfigurationNode' {} Maybe SparkSQL
a -> CodeGenConfigurationNode
s {$sel:sparkSQL:CodeGenConfigurationNode' :: Maybe SparkSQL
sparkSQL = Maybe SparkSQL
a} :: CodeGenConfigurationNode)

-- | Specifies a transform that writes samples of the data to an Amazon S3
-- bucket.
codeGenConfigurationNode_spigot :: Lens.Lens' CodeGenConfigurationNode (Prelude.Maybe Spigot)
codeGenConfigurationNode_spigot :: Lens' CodeGenConfigurationNode (Maybe Spigot)
codeGenConfigurationNode_spigot = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CodeGenConfigurationNode' {Maybe Spigot
spigot :: Maybe Spigot
$sel:spigot:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe Spigot
spigot} -> Maybe Spigot
spigot) (\s :: CodeGenConfigurationNode
s@CodeGenConfigurationNode' {} Maybe Spigot
a -> CodeGenConfigurationNode
s {$sel:spigot:CodeGenConfigurationNode' :: Maybe Spigot
spigot = Maybe Spigot
a} :: CodeGenConfigurationNode)

-- | Specifies a transform that splits data property keys into two
-- @DynamicFrames@. The output is a collection of @DynamicFrames@: one with
-- selected data property keys, and one with the remaining data property
-- keys.
codeGenConfigurationNode_splitFields :: Lens.Lens' CodeGenConfigurationNode (Prelude.Maybe SplitFields)
codeGenConfigurationNode_splitFields :: Lens' CodeGenConfigurationNode (Maybe SplitFields)
codeGenConfigurationNode_splitFields = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CodeGenConfigurationNode' {Maybe SplitFields
splitFields :: Maybe SplitFields
$sel:splitFields:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe SplitFields
splitFields} -> Maybe SplitFields
splitFields) (\s :: CodeGenConfigurationNode
s@CodeGenConfigurationNode' {} Maybe SplitFields
a -> CodeGenConfigurationNode
s {$sel:splitFields:CodeGenConfigurationNode' :: Maybe SplitFields
splitFields = Maybe SplitFields
a} :: CodeGenConfigurationNode)

-- | Specifies a transform that combines the rows from two or more datasets
-- into a single result.
codeGenConfigurationNode_union :: Lens.Lens' CodeGenConfigurationNode (Prelude.Maybe Union)
codeGenConfigurationNode_union :: Lens' CodeGenConfigurationNode (Maybe Union)
codeGenConfigurationNode_union = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CodeGenConfigurationNode' {Maybe Union
union :: Maybe Union
$sel:union:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe Union
union} -> Maybe Union
union) (\s :: CodeGenConfigurationNode
s@CodeGenConfigurationNode' {} Maybe Union
a -> CodeGenConfigurationNode
s {$sel:union:CodeGenConfigurationNode' :: Maybe Union
union = Maybe Union
a} :: CodeGenConfigurationNode)

instance Data.FromJSON CodeGenConfigurationNode where
  parseJSON :: Value -> Parser CodeGenConfigurationNode
parseJSON =
    forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.withObject
      String
"CodeGenConfigurationNode"
      ( \Object
x ->
          Maybe Aggregate
-> Maybe ApplyMapping
-> Maybe AthenaConnectorSource
-> Maybe CatalogKafkaSource
-> Maybe CatalogKinesisSource
-> Maybe CatalogSource
-> Maybe BasicCatalogTarget
-> Maybe CustomCode
-> Maybe DirectKafkaSource
-> Maybe DirectKinesisSource
-> Maybe DropDuplicates
-> Maybe DropFields
-> Maybe DropNullFields
-> Maybe DynamicTransform
-> Maybe DynamoDBCatalogSource
-> Maybe EvaluateDataQuality
-> Maybe FillMissingValues
-> Maybe Filter
-> Maybe GovernedCatalogSource
-> Maybe GovernedCatalogTarget
-> Maybe JDBCConnectorSource
-> Maybe JDBCConnectorTarget
-> Maybe Join
-> Maybe Merge
-> Maybe MicrosoftSQLServerCatalogSource
-> Maybe MicrosoftSQLServerCatalogTarget
-> Maybe MySQLCatalogSource
-> Maybe MySQLCatalogTarget
-> Maybe OracleSQLCatalogSource
-> Maybe OracleSQLCatalogTarget
-> Maybe PIIDetection
-> Maybe PostgreSQLCatalogSource
-> Maybe PostgreSQLCatalogTarget
-> Maybe RedshiftSource
-> Maybe RedshiftTarget
-> Maybe RelationalCatalogSource
-> Maybe RenameField
-> Maybe S3CatalogSource
-> Maybe S3CatalogTarget
-> Maybe S3CsvSource
-> Maybe S3DirectTarget
-> Maybe S3GlueParquetTarget
-> Maybe S3JsonSource
-> Maybe S3ParquetSource
-> Maybe SelectFields
-> Maybe SelectFromCollection
-> Maybe SparkConnectorSource
-> Maybe SparkConnectorTarget
-> Maybe SparkSQL
-> Maybe Spigot
-> Maybe SplitFields
-> Maybe Union
-> CodeGenConfigurationNode
CodeGenConfigurationNode'
            forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"Aggregate")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"ApplyMapping")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"AthenaConnectorSource")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"CatalogKafkaSource")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"CatalogKinesisSource")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"CatalogSource")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"CatalogTarget")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"CustomCode")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"DirectKafkaSource")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"DirectKinesisSource")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"DropDuplicates")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"DropFields")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"DropNullFields")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"DynamicTransform")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"DynamoDBCatalogSource")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"EvaluateDataQuality")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"FillMissingValues")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"Filter")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"GovernedCatalogSource")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"GovernedCatalogTarget")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"JDBCConnectorSource")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"JDBCConnectorTarget")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"Join")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"Merge")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"MicrosoftSQLServerCatalogSource")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"MicrosoftSQLServerCatalogTarget")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"MySQLCatalogSource")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"MySQLCatalogTarget")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"OracleSQLCatalogSource")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"OracleSQLCatalogTarget")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"PIIDetection")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"PostgreSQLCatalogSource")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"PostgreSQLCatalogTarget")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"RedshiftSource")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"RedshiftTarget")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"RelationalCatalogSource")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"RenameField")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"S3CatalogSource")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"S3CatalogTarget")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"S3CsvSource")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"S3DirectTarget")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"S3GlueParquetTarget")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"S3JsonSource")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"S3ParquetSource")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"SelectFields")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"SelectFromCollection")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"SparkConnectorSource")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"SparkConnectorTarget")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"SparkSQL")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"Spigot")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"SplitFields")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"Union")
      )

instance Prelude.Hashable CodeGenConfigurationNode where
  hashWithSalt :: Int -> CodeGenConfigurationNode -> Int
hashWithSalt Int
_salt CodeGenConfigurationNode' {Maybe Aggregate
Maybe BasicCatalogTarget
Maybe CatalogSource
Maybe DropDuplicates
Maybe DropFields
Maybe DynamoDBCatalogSource
Maybe EvaluateDataQuality
Maybe FillMissingValues
Maybe Filter
Maybe CustomCode
Maybe AthenaConnectorSource
Maybe JDBCConnectorTarget
Maybe JDBCConnectorSource
Maybe Join
Maybe ApplyMapping
Maybe Merge
Maybe MicrosoftSQLServerCatalogSource
Maybe MicrosoftSQLServerCatalogTarget
Maybe MySQLCatalogSource
Maybe MySQLCatalogTarget
Maybe DropNullFields
Maybe OracleSQLCatalogSource
Maybe OracleSQLCatalogTarget
Maybe PIIDetection
Maybe PostgreSQLCatalogSource
Maybe PostgreSQLCatalogTarget
Maybe RedshiftSource
Maybe RelationalCatalogSource
Maybe RenameField
Maybe S3JsonSource
Maybe S3ParquetSource
Maybe S3CatalogSource
Maybe GovernedCatalogSource
Maybe SelectFields
Maybe SelectFromCollection
Maybe S3CsvSource
Maybe SparkConnectorSource
Maybe SparkConnectorTarget
Maybe Spigot
Maybe SplitFields
Maybe SparkSQL
Maybe DirectKinesisSource
Maybe DirectKafkaSource
Maybe CatalogKinesisSource
Maybe CatalogKafkaSource
Maybe DynamicTransform
Maybe Union
Maybe S3GlueParquetTarget
Maybe S3DirectTarget
Maybe S3CatalogTarget
Maybe GovernedCatalogTarget
Maybe RedshiftTarget
union :: Maybe Union
splitFields :: Maybe SplitFields
spigot :: Maybe Spigot
sparkSQL :: Maybe SparkSQL
sparkConnectorTarget :: Maybe SparkConnectorTarget
sparkConnectorSource :: Maybe SparkConnectorSource
selectFromCollection :: Maybe SelectFromCollection
selectFields :: Maybe SelectFields
s3ParquetSource :: Maybe S3ParquetSource
s3JsonSource :: Maybe S3JsonSource
s3GlueParquetTarget :: Maybe S3GlueParquetTarget
s3DirectTarget :: Maybe S3DirectTarget
s3CsvSource :: Maybe S3CsvSource
s3CatalogTarget :: Maybe S3CatalogTarget
s3CatalogSource :: Maybe S3CatalogSource
renameField :: Maybe RenameField
relationalCatalogSource :: Maybe RelationalCatalogSource
redshiftTarget :: Maybe RedshiftTarget
redshiftSource :: Maybe RedshiftSource
postgreSQLCatalogTarget :: Maybe PostgreSQLCatalogTarget
postgreSQLCatalogSource :: Maybe PostgreSQLCatalogSource
pIIDetection :: Maybe PIIDetection
oracleSQLCatalogTarget :: Maybe OracleSQLCatalogTarget
oracleSQLCatalogSource :: Maybe OracleSQLCatalogSource
mySQLCatalogTarget :: Maybe MySQLCatalogTarget
mySQLCatalogSource :: Maybe MySQLCatalogSource
microsoftSQLServerCatalogTarget :: Maybe MicrosoftSQLServerCatalogTarget
microsoftSQLServerCatalogSource :: Maybe MicrosoftSQLServerCatalogSource
merge :: Maybe Merge
join :: Maybe Join
jDBCConnectorTarget :: Maybe JDBCConnectorTarget
jDBCConnectorSource :: Maybe JDBCConnectorSource
governedCatalogTarget :: Maybe GovernedCatalogTarget
governedCatalogSource :: Maybe GovernedCatalogSource
filter' :: Maybe Filter
fillMissingValues :: Maybe FillMissingValues
evaluateDataQuality :: Maybe EvaluateDataQuality
dynamoDBCatalogSource :: Maybe DynamoDBCatalogSource
dynamicTransform :: Maybe DynamicTransform
dropNullFields :: Maybe DropNullFields
dropFields :: Maybe DropFields
dropDuplicates :: Maybe DropDuplicates
directKinesisSource :: Maybe DirectKinesisSource
directKafkaSource :: Maybe DirectKafkaSource
customCode :: Maybe CustomCode
catalogTarget :: Maybe BasicCatalogTarget
catalogSource :: Maybe CatalogSource
catalogKinesisSource :: Maybe CatalogKinesisSource
catalogKafkaSource :: Maybe CatalogKafkaSource
athenaConnectorSource :: Maybe AthenaConnectorSource
applyMapping :: Maybe ApplyMapping
aggregate :: Maybe Aggregate
$sel:union:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe Union
$sel:splitFields:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe SplitFields
$sel:spigot:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe Spigot
$sel:sparkSQL:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe SparkSQL
$sel:sparkConnectorTarget:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe SparkConnectorTarget
$sel:sparkConnectorSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe SparkConnectorSource
$sel:selectFromCollection:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe SelectFromCollection
$sel:selectFields:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe SelectFields
$sel:s3ParquetSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe S3ParquetSource
$sel:s3JsonSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe S3JsonSource
$sel:s3GlueParquetTarget:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe S3GlueParquetTarget
$sel:s3DirectTarget:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe S3DirectTarget
$sel:s3CsvSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe S3CsvSource
$sel:s3CatalogTarget:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe S3CatalogTarget
$sel:s3CatalogSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe S3CatalogSource
$sel:renameField:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe RenameField
$sel:relationalCatalogSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe RelationalCatalogSource
$sel:redshiftTarget:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe RedshiftTarget
$sel:redshiftSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe RedshiftSource
$sel:postgreSQLCatalogTarget:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe PostgreSQLCatalogTarget
$sel:postgreSQLCatalogSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe PostgreSQLCatalogSource
$sel:pIIDetection:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe PIIDetection
$sel:oracleSQLCatalogTarget:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe OracleSQLCatalogTarget
$sel:oracleSQLCatalogSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe OracleSQLCatalogSource
$sel:mySQLCatalogTarget:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe MySQLCatalogTarget
$sel:mySQLCatalogSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe MySQLCatalogSource
$sel:microsoftSQLServerCatalogTarget:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe MicrosoftSQLServerCatalogTarget
$sel:microsoftSQLServerCatalogSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe MicrosoftSQLServerCatalogSource
$sel:merge:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe Merge
$sel:join:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe Join
$sel:jDBCConnectorTarget:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe JDBCConnectorTarget
$sel:jDBCConnectorSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe JDBCConnectorSource
$sel:governedCatalogTarget:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe GovernedCatalogTarget
$sel:governedCatalogSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe GovernedCatalogSource
$sel:filter':CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe Filter
$sel:fillMissingValues:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe FillMissingValues
$sel:evaluateDataQuality:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe EvaluateDataQuality
$sel:dynamoDBCatalogSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe DynamoDBCatalogSource
$sel:dynamicTransform:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe DynamicTransform
$sel:dropNullFields:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe DropNullFields
$sel:dropFields:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe DropFields
$sel:dropDuplicates:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe DropDuplicates
$sel:directKinesisSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe DirectKinesisSource
$sel:directKafkaSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe DirectKafkaSource
$sel:customCode:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe CustomCode
$sel:catalogTarget:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe BasicCatalogTarget
$sel:catalogSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe CatalogSource
$sel:catalogKinesisSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe CatalogKinesisSource
$sel:catalogKafkaSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe CatalogKafkaSource
$sel:athenaConnectorSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe AthenaConnectorSource
$sel:applyMapping:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe ApplyMapping
$sel:aggregate:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe Aggregate
..} =
    Int
_salt
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Aggregate
aggregate
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe ApplyMapping
applyMapping
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe AthenaConnectorSource
athenaConnectorSource
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe CatalogKafkaSource
catalogKafkaSource
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe CatalogKinesisSource
catalogKinesisSource
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe CatalogSource
catalogSource
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe BasicCatalogTarget
catalogTarget
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe CustomCode
customCode
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe DirectKafkaSource
directKafkaSource
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe DirectKinesisSource
directKinesisSource
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe DropDuplicates
dropDuplicates
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe DropFields
dropFields
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe DropNullFields
dropNullFields
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe DynamicTransform
dynamicTransform
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe DynamoDBCatalogSource
dynamoDBCatalogSource
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe EvaluateDataQuality
evaluateDataQuality
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe FillMissingValues
fillMissingValues
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Filter
filter'
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe GovernedCatalogSource
governedCatalogSource
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe GovernedCatalogTarget
governedCatalogTarget
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe JDBCConnectorSource
jDBCConnectorSource
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe JDBCConnectorTarget
jDBCConnectorTarget
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Join
join
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Merge
merge
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe MicrosoftSQLServerCatalogSource
microsoftSQLServerCatalogSource
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe MicrosoftSQLServerCatalogTarget
microsoftSQLServerCatalogTarget
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe MySQLCatalogSource
mySQLCatalogSource
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe MySQLCatalogTarget
mySQLCatalogTarget
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe OracleSQLCatalogSource
oracleSQLCatalogSource
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe OracleSQLCatalogTarget
oracleSQLCatalogTarget
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe PIIDetection
pIIDetection
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe PostgreSQLCatalogSource
postgreSQLCatalogSource
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe PostgreSQLCatalogTarget
postgreSQLCatalogTarget
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe RedshiftSource
redshiftSource
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe RedshiftTarget
redshiftTarget
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe RelationalCatalogSource
relationalCatalogSource
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe RenameField
renameField
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe S3CatalogSource
s3CatalogSource
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe S3CatalogTarget
s3CatalogTarget
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe S3CsvSource
s3CsvSource
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe S3DirectTarget
s3DirectTarget
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe S3GlueParquetTarget
s3GlueParquetTarget
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe S3JsonSource
s3JsonSource
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe S3ParquetSource
s3ParquetSource
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe SelectFields
selectFields
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe SelectFromCollection
selectFromCollection
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe SparkConnectorSource
sparkConnectorSource
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe SparkConnectorTarget
sparkConnectorTarget
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe SparkSQL
sparkSQL
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Spigot
spigot
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe SplitFields
splitFields
      forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Union
union

instance Prelude.NFData CodeGenConfigurationNode where
  rnf :: CodeGenConfigurationNode -> ()
rnf CodeGenConfigurationNode' {Maybe Aggregate
Maybe BasicCatalogTarget
Maybe CatalogSource
Maybe DropDuplicates
Maybe DropFields
Maybe DynamoDBCatalogSource
Maybe EvaluateDataQuality
Maybe FillMissingValues
Maybe Filter
Maybe CustomCode
Maybe AthenaConnectorSource
Maybe JDBCConnectorTarget
Maybe JDBCConnectorSource
Maybe Join
Maybe ApplyMapping
Maybe Merge
Maybe MicrosoftSQLServerCatalogSource
Maybe MicrosoftSQLServerCatalogTarget
Maybe MySQLCatalogSource
Maybe MySQLCatalogTarget
Maybe DropNullFields
Maybe OracleSQLCatalogSource
Maybe OracleSQLCatalogTarget
Maybe PIIDetection
Maybe PostgreSQLCatalogSource
Maybe PostgreSQLCatalogTarget
Maybe RedshiftSource
Maybe RelationalCatalogSource
Maybe RenameField
Maybe S3JsonSource
Maybe S3ParquetSource
Maybe S3CatalogSource
Maybe GovernedCatalogSource
Maybe SelectFields
Maybe SelectFromCollection
Maybe S3CsvSource
Maybe SparkConnectorSource
Maybe SparkConnectorTarget
Maybe Spigot
Maybe SplitFields
Maybe SparkSQL
Maybe DirectKinesisSource
Maybe DirectKafkaSource
Maybe CatalogKinesisSource
Maybe CatalogKafkaSource
Maybe DynamicTransform
Maybe Union
Maybe S3GlueParquetTarget
Maybe S3DirectTarget
Maybe S3CatalogTarget
Maybe GovernedCatalogTarget
Maybe RedshiftTarget
union :: Maybe Union
splitFields :: Maybe SplitFields
spigot :: Maybe Spigot
sparkSQL :: Maybe SparkSQL
sparkConnectorTarget :: Maybe SparkConnectorTarget
sparkConnectorSource :: Maybe SparkConnectorSource
selectFromCollection :: Maybe SelectFromCollection
selectFields :: Maybe SelectFields
s3ParquetSource :: Maybe S3ParquetSource
s3JsonSource :: Maybe S3JsonSource
s3GlueParquetTarget :: Maybe S3GlueParquetTarget
s3DirectTarget :: Maybe S3DirectTarget
s3CsvSource :: Maybe S3CsvSource
s3CatalogTarget :: Maybe S3CatalogTarget
s3CatalogSource :: Maybe S3CatalogSource
renameField :: Maybe RenameField
relationalCatalogSource :: Maybe RelationalCatalogSource
redshiftTarget :: Maybe RedshiftTarget
redshiftSource :: Maybe RedshiftSource
postgreSQLCatalogTarget :: Maybe PostgreSQLCatalogTarget
postgreSQLCatalogSource :: Maybe PostgreSQLCatalogSource
pIIDetection :: Maybe PIIDetection
oracleSQLCatalogTarget :: Maybe OracleSQLCatalogTarget
oracleSQLCatalogSource :: Maybe OracleSQLCatalogSource
mySQLCatalogTarget :: Maybe MySQLCatalogTarget
mySQLCatalogSource :: Maybe MySQLCatalogSource
microsoftSQLServerCatalogTarget :: Maybe MicrosoftSQLServerCatalogTarget
microsoftSQLServerCatalogSource :: Maybe MicrosoftSQLServerCatalogSource
merge :: Maybe Merge
join :: Maybe Join
jDBCConnectorTarget :: Maybe JDBCConnectorTarget
jDBCConnectorSource :: Maybe JDBCConnectorSource
governedCatalogTarget :: Maybe GovernedCatalogTarget
governedCatalogSource :: Maybe GovernedCatalogSource
filter' :: Maybe Filter
fillMissingValues :: Maybe FillMissingValues
evaluateDataQuality :: Maybe EvaluateDataQuality
dynamoDBCatalogSource :: Maybe DynamoDBCatalogSource
dynamicTransform :: Maybe DynamicTransform
dropNullFields :: Maybe DropNullFields
dropFields :: Maybe DropFields
dropDuplicates :: Maybe DropDuplicates
directKinesisSource :: Maybe DirectKinesisSource
directKafkaSource :: Maybe DirectKafkaSource
customCode :: Maybe CustomCode
catalogTarget :: Maybe BasicCatalogTarget
catalogSource :: Maybe CatalogSource
catalogKinesisSource :: Maybe CatalogKinesisSource
catalogKafkaSource :: Maybe CatalogKafkaSource
athenaConnectorSource :: Maybe AthenaConnectorSource
applyMapping :: Maybe ApplyMapping
aggregate :: Maybe Aggregate
$sel:union:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe Union
$sel:splitFields:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe SplitFields
$sel:spigot:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe Spigot
$sel:sparkSQL:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe SparkSQL
$sel:sparkConnectorTarget:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe SparkConnectorTarget
$sel:sparkConnectorSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe SparkConnectorSource
$sel:selectFromCollection:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe SelectFromCollection
$sel:selectFields:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe SelectFields
$sel:s3ParquetSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe S3ParquetSource
$sel:s3JsonSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe S3JsonSource
$sel:s3GlueParquetTarget:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe S3GlueParquetTarget
$sel:s3DirectTarget:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe S3DirectTarget
$sel:s3CsvSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe S3CsvSource
$sel:s3CatalogTarget:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe S3CatalogTarget
$sel:s3CatalogSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe S3CatalogSource
$sel:renameField:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe RenameField
$sel:relationalCatalogSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe RelationalCatalogSource
$sel:redshiftTarget:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe RedshiftTarget
$sel:redshiftSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe RedshiftSource
$sel:postgreSQLCatalogTarget:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe PostgreSQLCatalogTarget
$sel:postgreSQLCatalogSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe PostgreSQLCatalogSource
$sel:pIIDetection:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe PIIDetection
$sel:oracleSQLCatalogTarget:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe OracleSQLCatalogTarget
$sel:oracleSQLCatalogSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe OracleSQLCatalogSource
$sel:mySQLCatalogTarget:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe MySQLCatalogTarget
$sel:mySQLCatalogSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe MySQLCatalogSource
$sel:microsoftSQLServerCatalogTarget:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe MicrosoftSQLServerCatalogTarget
$sel:microsoftSQLServerCatalogSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe MicrosoftSQLServerCatalogSource
$sel:merge:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe Merge
$sel:join:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe Join
$sel:jDBCConnectorTarget:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe JDBCConnectorTarget
$sel:jDBCConnectorSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe JDBCConnectorSource
$sel:governedCatalogTarget:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe GovernedCatalogTarget
$sel:governedCatalogSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe GovernedCatalogSource
$sel:filter':CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe Filter
$sel:fillMissingValues:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe FillMissingValues
$sel:evaluateDataQuality:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe EvaluateDataQuality
$sel:dynamoDBCatalogSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe DynamoDBCatalogSource
$sel:dynamicTransform:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe DynamicTransform
$sel:dropNullFields:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe DropNullFields
$sel:dropFields:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe DropFields
$sel:dropDuplicates:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe DropDuplicates
$sel:directKinesisSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe DirectKinesisSource
$sel:directKafkaSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe DirectKafkaSource
$sel:customCode:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe CustomCode
$sel:catalogTarget:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe BasicCatalogTarget
$sel:catalogSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe CatalogSource
$sel:catalogKinesisSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe CatalogKinesisSource
$sel:catalogKafkaSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe CatalogKafkaSource
$sel:athenaConnectorSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe AthenaConnectorSource
$sel:applyMapping:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe ApplyMapping
$sel:aggregate:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe Aggregate
..} =
    forall a. NFData a => a -> ()
Prelude.rnf Maybe Aggregate
aggregate
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe ApplyMapping
applyMapping
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe AthenaConnectorSource
athenaConnectorSource
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe CatalogKafkaSource
catalogKafkaSource
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe CatalogKinesisSource
catalogKinesisSource
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe CatalogSource
catalogSource
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe BasicCatalogTarget
catalogTarget
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe CustomCode
customCode
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe DirectKafkaSource
directKafkaSource
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe DirectKinesisSource
directKinesisSource
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe DropDuplicates
dropDuplicates
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe DropFields
dropFields
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe DropNullFields
dropNullFields
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe DynamicTransform
dynamicTransform
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe DynamoDBCatalogSource
dynamoDBCatalogSource
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe EvaluateDataQuality
evaluateDataQuality
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe FillMissingValues
fillMissingValues
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Filter
filter'
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf
        Maybe GovernedCatalogSource
governedCatalogSource
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf
        Maybe GovernedCatalogTarget
governedCatalogTarget
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf
        Maybe JDBCConnectorSource
jDBCConnectorSource
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf
        Maybe JDBCConnectorTarget
jDBCConnectorTarget
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Join
join
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Merge
merge
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf
        Maybe MicrosoftSQLServerCatalogSource
microsoftSQLServerCatalogSource
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf
        Maybe MicrosoftSQLServerCatalogTarget
microsoftSQLServerCatalogTarget
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf
        Maybe MySQLCatalogSource
mySQLCatalogSource
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf
        Maybe MySQLCatalogTarget
mySQLCatalogTarget
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf
        Maybe OracleSQLCatalogSource
oracleSQLCatalogSource
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf
        Maybe OracleSQLCatalogTarget
oracleSQLCatalogTarget
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf
        Maybe PIIDetection
pIIDetection
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf
        Maybe PostgreSQLCatalogSource
postgreSQLCatalogSource
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf
        Maybe PostgreSQLCatalogTarget
postgreSQLCatalogTarget
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf
        Maybe RedshiftSource
redshiftSource
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf
        Maybe RedshiftTarget
redshiftTarget
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf
        Maybe RelationalCatalogSource
relationalCatalogSource
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf
        Maybe RenameField
renameField
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf
        Maybe S3CatalogSource
s3CatalogSource
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf
        Maybe S3CatalogTarget
s3CatalogTarget
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf
        Maybe S3CsvSource
s3CsvSource
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf
        Maybe S3DirectTarget
s3DirectTarget
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf
        Maybe S3GlueParquetTarget
s3GlueParquetTarget
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf
        Maybe S3JsonSource
s3JsonSource
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf
        Maybe S3ParquetSource
s3ParquetSource
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf
        Maybe SelectFields
selectFields
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf
        Maybe SelectFromCollection
selectFromCollection
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf
        Maybe SparkConnectorSource
sparkConnectorSource
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf
        Maybe SparkConnectorTarget
sparkConnectorTarget
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf
        Maybe SparkSQL
sparkSQL
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf
        Maybe Spigot
spigot
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf
        Maybe SplitFields
splitFields
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf
        Maybe Union
union

instance Data.ToJSON CodeGenConfigurationNode where
  toJSON :: CodeGenConfigurationNode -> Value
toJSON CodeGenConfigurationNode' {Maybe Aggregate
Maybe BasicCatalogTarget
Maybe CatalogSource
Maybe DropDuplicates
Maybe DropFields
Maybe DynamoDBCatalogSource
Maybe EvaluateDataQuality
Maybe FillMissingValues
Maybe Filter
Maybe CustomCode
Maybe AthenaConnectorSource
Maybe JDBCConnectorTarget
Maybe JDBCConnectorSource
Maybe Join
Maybe ApplyMapping
Maybe Merge
Maybe MicrosoftSQLServerCatalogSource
Maybe MicrosoftSQLServerCatalogTarget
Maybe MySQLCatalogSource
Maybe MySQLCatalogTarget
Maybe DropNullFields
Maybe OracleSQLCatalogSource
Maybe OracleSQLCatalogTarget
Maybe PIIDetection
Maybe PostgreSQLCatalogSource
Maybe PostgreSQLCatalogTarget
Maybe RedshiftSource
Maybe RelationalCatalogSource
Maybe RenameField
Maybe S3JsonSource
Maybe S3ParquetSource
Maybe S3CatalogSource
Maybe GovernedCatalogSource
Maybe SelectFields
Maybe SelectFromCollection
Maybe S3CsvSource
Maybe SparkConnectorSource
Maybe SparkConnectorTarget
Maybe Spigot
Maybe SplitFields
Maybe SparkSQL
Maybe DirectKinesisSource
Maybe DirectKafkaSource
Maybe CatalogKinesisSource
Maybe CatalogKafkaSource
Maybe DynamicTransform
Maybe Union
Maybe S3GlueParquetTarget
Maybe S3DirectTarget
Maybe S3CatalogTarget
Maybe GovernedCatalogTarget
Maybe RedshiftTarget
union :: Maybe Union
splitFields :: Maybe SplitFields
spigot :: Maybe Spigot
sparkSQL :: Maybe SparkSQL
sparkConnectorTarget :: Maybe SparkConnectorTarget
sparkConnectorSource :: Maybe SparkConnectorSource
selectFromCollection :: Maybe SelectFromCollection
selectFields :: Maybe SelectFields
s3ParquetSource :: Maybe S3ParquetSource
s3JsonSource :: Maybe S3JsonSource
s3GlueParquetTarget :: Maybe S3GlueParquetTarget
s3DirectTarget :: Maybe S3DirectTarget
s3CsvSource :: Maybe S3CsvSource
s3CatalogTarget :: Maybe S3CatalogTarget
s3CatalogSource :: Maybe S3CatalogSource
renameField :: Maybe RenameField
relationalCatalogSource :: Maybe RelationalCatalogSource
redshiftTarget :: Maybe RedshiftTarget
redshiftSource :: Maybe RedshiftSource
postgreSQLCatalogTarget :: Maybe PostgreSQLCatalogTarget
postgreSQLCatalogSource :: Maybe PostgreSQLCatalogSource
pIIDetection :: Maybe PIIDetection
oracleSQLCatalogTarget :: Maybe OracleSQLCatalogTarget
oracleSQLCatalogSource :: Maybe OracleSQLCatalogSource
mySQLCatalogTarget :: Maybe MySQLCatalogTarget
mySQLCatalogSource :: Maybe MySQLCatalogSource
microsoftSQLServerCatalogTarget :: Maybe MicrosoftSQLServerCatalogTarget
microsoftSQLServerCatalogSource :: Maybe MicrosoftSQLServerCatalogSource
merge :: Maybe Merge
join :: Maybe Join
jDBCConnectorTarget :: Maybe JDBCConnectorTarget
jDBCConnectorSource :: Maybe JDBCConnectorSource
governedCatalogTarget :: Maybe GovernedCatalogTarget
governedCatalogSource :: Maybe GovernedCatalogSource
filter' :: Maybe Filter
fillMissingValues :: Maybe FillMissingValues
evaluateDataQuality :: Maybe EvaluateDataQuality
dynamoDBCatalogSource :: Maybe DynamoDBCatalogSource
dynamicTransform :: Maybe DynamicTransform
dropNullFields :: Maybe DropNullFields
dropFields :: Maybe DropFields
dropDuplicates :: Maybe DropDuplicates
directKinesisSource :: Maybe DirectKinesisSource
directKafkaSource :: Maybe DirectKafkaSource
customCode :: Maybe CustomCode
catalogTarget :: Maybe BasicCatalogTarget
catalogSource :: Maybe CatalogSource
catalogKinesisSource :: Maybe CatalogKinesisSource
catalogKafkaSource :: Maybe CatalogKafkaSource
athenaConnectorSource :: Maybe AthenaConnectorSource
applyMapping :: Maybe ApplyMapping
aggregate :: Maybe Aggregate
$sel:union:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe Union
$sel:splitFields:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe SplitFields
$sel:spigot:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe Spigot
$sel:sparkSQL:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe SparkSQL
$sel:sparkConnectorTarget:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe SparkConnectorTarget
$sel:sparkConnectorSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe SparkConnectorSource
$sel:selectFromCollection:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe SelectFromCollection
$sel:selectFields:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe SelectFields
$sel:s3ParquetSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe S3ParquetSource
$sel:s3JsonSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe S3JsonSource
$sel:s3GlueParquetTarget:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe S3GlueParquetTarget
$sel:s3DirectTarget:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe S3DirectTarget
$sel:s3CsvSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe S3CsvSource
$sel:s3CatalogTarget:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe S3CatalogTarget
$sel:s3CatalogSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe S3CatalogSource
$sel:renameField:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe RenameField
$sel:relationalCatalogSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe RelationalCatalogSource
$sel:redshiftTarget:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe RedshiftTarget
$sel:redshiftSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe RedshiftSource
$sel:postgreSQLCatalogTarget:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe PostgreSQLCatalogTarget
$sel:postgreSQLCatalogSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe PostgreSQLCatalogSource
$sel:pIIDetection:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe PIIDetection
$sel:oracleSQLCatalogTarget:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe OracleSQLCatalogTarget
$sel:oracleSQLCatalogSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe OracleSQLCatalogSource
$sel:mySQLCatalogTarget:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe MySQLCatalogTarget
$sel:mySQLCatalogSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe MySQLCatalogSource
$sel:microsoftSQLServerCatalogTarget:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe MicrosoftSQLServerCatalogTarget
$sel:microsoftSQLServerCatalogSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe MicrosoftSQLServerCatalogSource
$sel:merge:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe Merge
$sel:join:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe Join
$sel:jDBCConnectorTarget:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe JDBCConnectorTarget
$sel:jDBCConnectorSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe JDBCConnectorSource
$sel:governedCatalogTarget:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe GovernedCatalogTarget
$sel:governedCatalogSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe GovernedCatalogSource
$sel:filter':CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe Filter
$sel:fillMissingValues:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe FillMissingValues
$sel:evaluateDataQuality:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe EvaluateDataQuality
$sel:dynamoDBCatalogSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe DynamoDBCatalogSource
$sel:dynamicTransform:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe DynamicTransform
$sel:dropNullFields:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe DropNullFields
$sel:dropFields:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe DropFields
$sel:dropDuplicates:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe DropDuplicates
$sel:directKinesisSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe DirectKinesisSource
$sel:directKafkaSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe DirectKafkaSource
$sel:customCode:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe CustomCode
$sel:catalogTarget:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe BasicCatalogTarget
$sel:catalogSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe CatalogSource
$sel:catalogKinesisSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe CatalogKinesisSource
$sel:catalogKafkaSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe CatalogKafkaSource
$sel:athenaConnectorSource:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe AthenaConnectorSource
$sel:applyMapping:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe ApplyMapping
$sel:aggregate:CodeGenConfigurationNode' :: CodeGenConfigurationNode -> Maybe Aggregate
..} =
    [Pair] -> Value
Data.object
      ( forall a. [Maybe a] -> [a]
Prelude.catMaybes
          [ (Key
"Aggregate" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=) forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Aggregate
aggregate,
            (Key
"ApplyMapping" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=) forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe ApplyMapping
applyMapping,
            (Key
"AthenaConnectorSource" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=)
              forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe AthenaConnectorSource
athenaConnectorSource,
            (Key
"CatalogKafkaSource" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=)
              forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe CatalogKafkaSource
catalogKafkaSource,
            (Key
"CatalogKinesisSource" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=)
              forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe CatalogKinesisSource
catalogKinesisSource,
            (Key
"CatalogSource" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=) forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe CatalogSource
catalogSource,
            (Key
"CatalogTarget" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=) forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe BasicCatalogTarget
catalogTarget,
            (Key
"CustomCode" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=) forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe CustomCode
customCode,
            (Key
"DirectKafkaSource" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=)
              forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe DirectKafkaSource
directKafkaSource,
            (Key
"DirectKinesisSource" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=)
              forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe DirectKinesisSource
directKinesisSource,
            (Key
"DropDuplicates" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=)
              forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe DropDuplicates
dropDuplicates,
            (Key
"DropFields" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=) forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe DropFields
dropFields,
            (Key
"DropNullFields" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=)
              forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe DropNullFields
dropNullFields,
            (Key
"DynamicTransform" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=)
              forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe DynamicTransform
dynamicTransform,
            (Key
"DynamoDBCatalogSource" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=)
              forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe DynamoDBCatalogSource
dynamoDBCatalogSource,
            (Key
"EvaluateDataQuality" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=)
              forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe EvaluateDataQuality
evaluateDataQuality,
            (Key
"FillMissingValues" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=)
              forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe FillMissingValues
fillMissingValues,
            (Key
"Filter" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=) forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Filter
filter',
            (Key
"GovernedCatalogSource" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=)
              forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe GovernedCatalogSource
governedCatalogSource,
            (Key
"GovernedCatalogTarget" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=)
              forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe GovernedCatalogTarget
governedCatalogTarget,
            (Key
"JDBCConnectorSource" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=)
              forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe JDBCConnectorSource
jDBCConnectorSource,
            (Key
"JDBCConnectorTarget" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=)
              forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe JDBCConnectorTarget
jDBCConnectorTarget,
            (Key
"Join" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=) forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Join
join,
            (Key
"Merge" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=) forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Merge
merge,
            (Key
"MicrosoftSQLServerCatalogSource" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=)
              forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe MicrosoftSQLServerCatalogSource
microsoftSQLServerCatalogSource,
            (Key
"MicrosoftSQLServerCatalogTarget" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=)
              forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe MicrosoftSQLServerCatalogTarget
microsoftSQLServerCatalogTarget,
            (Key
"MySQLCatalogSource" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=)
              forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe MySQLCatalogSource
mySQLCatalogSource,
            (Key
"MySQLCatalogTarget" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=)
              forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe MySQLCatalogTarget
mySQLCatalogTarget,
            (Key
"OracleSQLCatalogSource" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=)
              forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe OracleSQLCatalogSource
oracleSQLCatalogSource,
            (Key
"OracleSQLCatalogTarget" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=)
              forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe OracleSQLCatalogTarget
oracleSQLCatalogTarget,
            (Key
"PIIDetection" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=) forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe PIIDetection
pIIDetection,
            (Key
"PostgreSQLCatalogSource" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=)
              forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe PostgreSQLCatalogSource
postgreSQLCatalogSource,
            (Key
"PostgreSQLCatalogTarget" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=)
              forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe PostgreSQLCatalogTarget
postgreSQLCatalogTarget,
            (Key
"RedshiftSource" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=)
              forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe RedshiftSource
redshiftSource,
            (Key
"RedshiftTarget" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=)
              forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe RedshiftTarget
redshiftTarget,
            (Key
"RelationalCatalogSource" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=)
              forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe RelationalCatalogSource
relationalCatalogSource,
            (Key
"RenameField" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=) forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe RenameField
renameField,
            (Key
"S3CatalogSource" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=)
              forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe S3CatalogSource
s3CatalogSource,
            (Key
"S3CatalogTarget" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=)
              forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe S3CatalogTarget
s3CatalogTarget,
            (Key
"S3CsvSource" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=) forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe S3CsvSource
s3CsvSource,
            (Key
"S3DirectTarget" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=)
              forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe S3DirectTarget
s3DirectTarget,
            (Key
"S3GlueParquetTarget" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=)
              forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe S3GlueParquetTarget
s3GlueParquetTarget,
            (Key
"S3JsonSource" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=) forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe S3JsonSource
s3JsonSource,
            (Key
"S3ParquetSource" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=)
              forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe S3ParquetSource
s3ParquetSource,
            (Key
"SelectFields" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=) forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe SelectFields
selectFields,
            (Key
"SelectFromCollection" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=)
              forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe SelectFromCollection
selectFromCollection,
            (Key
"SparkConnectorSource" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=)
              forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe SparkConnectorSource
sparkConnectorSource,
            (Key
"SparkConnectorTarget" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=)
              forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe SparkConnectorTarget
sparkConnectorTarget,
            (Key
"SparkSQL" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=) forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe SparkSQL
sparkSQL,
            (Key
"Spigot" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=) forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Spigot
spigot,
            (Key
"SplitFields" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=) forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe SplitFields
splitFields,
            (Key
"Union" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=) forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Union
union
          ]
      )