/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Specifies configuration for Snowflake nodes in Glue Studio.See
* Also:
AWS
* API Reference
Specifies how retrieved data is specified. Valid values:
* "table"
, "query"
.
Specifies how retrieved data is specified. Valid values:
* "table"
, "query"
.
Specifies how retrieved data is specified. Valid values:
* "table"
, "query"
.
Specifies how retrieved data is specified. Valid values:
* "table"
, "query"
.
Specifies how retrieved data is specified. Valid values:
* "table"
, "query"
.
Specifies how retrieved data is specified. Valid values:
* "table"
, "query"
.
Specifies how retrieved data is specified. Valid values:
* "table"
, "query"
.
Specifies how retrieved data is specified. Valid values:
* "table"
, "query"
.
Specifies a Glue Data Catalog Connection to a Snowflake endpoint.
*/ inline const Option& GetConnection() const{ return m_connection; } /** *Specifies a Glue Data Catalog Connection to a Snowflake endpoint.
*/ inline bool ConnectionHasBeenSet() const { return m_connectionHasBeenSet; } /** *Specifies a Glue Data Catalog Connection to a Snowflake endpoint.
*/ inline void SetConnection(const Option& value) { m_connectionHasBeenSet = true; m_connection = value; } /** *Specifies a Glue Data Catalog Connection to a Snowflake endpoint.
*/ inline void SetConnection(Option&& value) { m_connectionHasBeenSet = true; m_connection = std::move(value); } /** *Specifies a Glue Data Catalog Connection to a Snowflake endpoint.
*/ inline SnowflakeNodeData& WithConnection(const Option& value) { SetConnection(value); return *this;} /** *Specifies a Glue Data Catalog Connection to a Snowflake endpoint.
*/ inline SnowflakeNodeData& WithConnection(Option&& value) { SetConnection(std::move(value)); return *this;} /** *Specifies a Snowflake database schema for your node to use.
*/ inline const Aws::String& GetSchema() const{ return m_schema; } /** *Specifies a Snowflake database schema for your node to use.
*/ inline bool SchemaHasBeenSet() const { return m_schemaHasBeenSet; } /** *Specifies a Snowflake database schema for your node to use.
*/ inline void SetSchema(const Aws::String& value) { m_schemaHasBeenSet = true; m_schema = value; } /** *Specifies a Snowflake database schema for your node to use.
*/ inline void SetSchema(Aws::String&& value) { m_schemaHasBeenSet = true; m_schema = std::move(value); } /** *Specifies a Snowflake database schema for your node to use.
*/ inline void SetSchema(const char* value) { m_schemaHasBeenSet = true; m_schema.assign(value); } /** *Specifies a Snowflake database schema for your node to use.
*/ inline SnowflakeNodeData& WithSchema(const Aws::String& value) { SetSchema(value); return *this;} /** *Specifies a Snowflake database schema for your node to use.
*/ inline SnowflakeNodeData& WithSchema(Aws::String&& value) { SetSchema(std::move(value)); return *this;} /** *Specifies a Snowflake database schema for your node to use.
*/ inline SnowflakeNodeData& WithSchema(const char* value) { SetSchema(value); return *this;} /** *Specifies a Snowflake table for your node to use.
*/ inline const Aws::String& GetTable() const{ return m_table; } /** *Specifies a Snowflake table for your node to use.
*/ inline bool TableHasBeenSet() const { return m_tableHasBeenSet; } /** *Specifies a Snowflake table for your node to use.
*/ inline void SetTable(const Aws::String& value) { m_tableHasBeenSet = true; m_table = value; } /** *Specifies a Snowflake table for your node to use.
*/ inline void SetTable(Aws::String&& value) { m_tableHasBeenSet = true; m_table = std::move(value); } /** *Specifies a Snowflake table for your node to use.
*/ inline void SetTable(const char* value) { m_tableHasBeenSet = true; m_table.assign(value); } /** *Specifies a Snowflake table for your node to use.
*/ inline SnowflakeNodeData& WithTable(const Aws::String& value) { SetTable(value); return *this;} /** *Specifies a Snowflake table for your node to use.
*/ inline SnowflakeNodeData& WithTable(Aws::String&& value) { SetTable(std::move(value)); return *this;} /** *Specifies a Snowflake table for your node to use.
*/ inline SnowflakeNodeData& WithTable(const char* value) { SetTable(value); return *this;} /** *Specifies a Snowflake database for your node to use.
*/ inline const Aws::String& GetDatabase() const{ return m_database; } /** *Specifies a Snowflake database for your node to use.
*/ inline bool DatabaseHasBeenSet() const { return m_databaseHasBeenSet; } /** *Specifies a Snowflake database for your node to use.
*/ inline void SetDatabase(const Aws::String& value) { m_databaseHasBeenSet = true; m_database = value; } /** *Specifies a Snowflake database for your node to use.
*/ inline void SetDatabase(Aws::String&& value) { m_databaseHasBeenSet = true; m_database = std::move(value); } /** *Specifies a Snowflake database for your node to use.
*/ inline void SetDatabase(const char* value) { m_databaseHasBeenSet = true; m_database.assign(value); } /** *Specifies a Snowflake database for your node to use.
*/ inline SnowflakeNodeData& WithDatabase(const Aws::String& value) { SetDatabase(value); return *this;} /** *Specifies a Snowflake database for your node to use.
*/ inline SnowflakeNodeData& WithDatabase(Aws::String&& value) { SetDatabase(std::move(value)); return *this;} /** *Specifies a Snowflake database for your node to use.
*/ inline SnowflakeNodeData& WithDatabase(const char* value) { SetDatabase(value); return *this;} /** *Not currently used.
*/ inline const Aws::String& GetTempDir() const{ return m_tempDir; } /** *Not currently used.
*/ inline bool TempDirHasBeenSet() const { return m_tempDirHasBeenSet; } /** *Not currently used.
*/ inline void SetTempDir(const Aws::String& value) { m_tempDirHasBeenSet = true; m_tempDir = value; } /** *Not currently used.
*/ inline void SetTempDir(Aws::String&& value) { m_tempDirHasBeenSet = true; m_tempDir = std::move(value); } /** *Not currently used.
*/ inline void SetTempDir(const char* value) { m_tempDirHasBeenSet = true; m_tempDir.assign(value); } /** *Not currently used.
*/ inline SnowflakeNodeData& WithTempDir(const Aws::String& value) { SetTempDir(value); return *this;} /** *Not currently used.
*/ inline SnowflakeNodeData& WithTempDir(Aws::String&& value) { SetTempDir(std::move(value)); return *this;} /** *Not currently used.
*/ inline SnowflakeNodeData& WithTempDir(const char* value) { SetTempDir(value); return *this;} /** *Not currently used.
*/ inline const Option& GetIamRole() const{ return m_iamRole; } /** *Not currently used.
*/ inline bool IamRoleHasBeenSet() const { return m_iamRoleHasBeenSet; } /** *Not currently used.
*/ inline void SetIamRole(const Option& value) { m_iamRoleHasBeenSet = true; m_iamRole = value; } /** *Not currently used.
*/ inline void SetIamRole(Option&& value) { m_iamRoleHasBeenSet = true; m_iamRole = std::move(value); } /** *Not currently used.
*/ inline SnowflakeNodeData& WithIamRole(const Option& value) { SetIamRole(value); return *this;} /** *Not currently used.
*/ inline SnowflakeNodeData& WithIamRole(Option&& value) { SetIamRole(std::move(value)); return *this;} /** *Specifies additional options passed to the Snowflake connector. If options * are specified elsewhere in this node, this will take precedence.
*/ inline const Aws::MapSpecifies additional options passed to the Snowflake connector. If options * are specified elsewhere in this node, this will take precedence.
*/ inline bool AdditionalOptionsHasBeenSet() const { return m_additionalOptionsHasBeenSet; } /** *Specifies additional options passed to the Snowflake connector. If options * are specified elsewhere in this node, this will take precedence.
*/ inline void SetAdditionalOptions(const Aws::MapSpecifies additional options passed to the Snowflake connector. If options * are specified elsewhere in this node, this will take precedence.
*/ inline void SetAdditionalOptions(Aws::MapSpecifies additional options passed to the Snowflake connector. If options * are specified elsewhere in this node, this will take precedence.
*/ inline SnowflakeNodeData& WithAdditionalOptions(const Aws::MapSpecifies additional options passed to the Snowflake connector. If options * are specified elsewhere in this node, this will take precedence.
*/ inline SnowflakeNodeData& WithAdditionalOptions(Aws::MapSpecifies additional options passed to the Snowflake connector. If options * are specified elsewhere in this node, this will take precedence.
*/ inline SnowflakeNodeData& AddAdditionalOptions(const Aws::String& key, const Aws::String& value) { m_additionalOptionsHasBeenSet = true; m_additionalOptions.emplace(key, value); return *this; } /** *Specifies additional options passed to the Snowflake connector. If options * are specified elsewhere in this node, this will take precedence.
*/ inline SnowflakeNodeData& AddAdditionalOptions(Aws::String&& key, const Aws::String& value) { m_additionalOptionsHasBeenSet = true; m_additionalOptions.emplace(std::move(key), value); return *this; } /** *Specifies additional options passed to the Snowflake connector. If options * are specified elsewhere in this node, this will take precedence.
*/ inline SnowflakeNodeData& AddAdditionalOptions(const Aws::String& key, Aws::String&& value) { m_additionalOptionsHasBeenSet = true; m_additionalOptions.emplace(key, std::move(value)); return *this; } /** *Specifies additional options passed to the Snowflake connector. If options * are specified elsewhere in this node, this will take precedence.
*/ inline SnowflakeNodeData& AddAdditionalOptions(Aws::String&& key, Aws::String&& value) { m_additionalOptionsHasBeenSet = true; m_additionalOptions.emplace(std::move(key), std::move(value)); return *this; } /** *Specifies additional options passed to the Snowflake connector. If options * are specified elsewhere in this node, this will take precedence.
*/ inline SnowflakeNodeData& AddAdditionalOptions(const char* key, Aws::String&& value) { m_additionalOptionsHasBeenSet = true; m_additionalOptions.emplace(key, std::move(value)); return *this; } /** *Specifies additional options passed to the Snowflake connector. If options * are specified elsewhere in this node, this will take precedence.
*/ inline SnowflakeNodeData& AddAdditionalOptions(Aws::String&& key, const char* value) { m_additionalOptionsHasBeenSet = true; m_additionalOptions.emplace(std::move(key), value); return *this; } /** *Specifies additional options passed to the Snowflake connector. If options * are specified elsewhere in this node, this will take precedence.
*/ inline SnowflakeNodeData& AddAdditionalOptions(const char* key, const char* value) { m_additionalOptionsHasBeenSet = true; m_additionalOptions.emplace(key, value); return *this; } /** *A SQL string used to retrieve data with the query
* sourcetype.
A SQL string used to retrieve data with the query
* sourcetype.
A SQL string used to retrieve data with the query
* sourcetype.
A SQL string used to retrieve data with the query
* sourcetype.
A SQL string used to retrieve data with the query
* sourcetype.
A SQL string used to retrieve data with the query
* sourcetype.
A SQL string used to retrieve data with the query
* sourcetype.
A SQL string used to retrieve data with the query
* sourcetype.
A SQL string run before the Snowflake connector performs its standard * actions.
*/ inline const Aws::String& GetPreAction() const{ return m_preAction; } /** *A SQL string run before the Snowflake connector performs its standard * actions.
*/ inline bool PreActionHasBeenSet() const { return m_preActionHasBeenSet; } /** *A SQL string run before the Snowflake connector performs its standard * actions.
*/ inline void SetPreAction(const Aws::String& value) { m_preActionHasBeenSet = true; m_preAction = value; } /** *A SQL string run before the Snowflake connector performs its standard * actions.
*/ inline void SetPreAction(Aws::String&& value) { m_preActionHasBeenSet = true; m_preAction = std::move(value); } /** *A SQL string run before the Snowflake connector performs its standard * actions.
*/ inline void SetPreAction(const char* value) { m_preActionHasBeenSet = true; m_preAction.assign(value); } /** *A SQL string run before the Snowflake connector performs its standard * actions.
*/ inline SnowflakeNodeData& WithPreAction(const Aws::String& value) { SetPreAction(value); return *this;} /** *A SQL string run before the Snowflake connector performs its standard * actions.
*/ inline SnowflakeNodeData& WithPreAction(Aws::String&& value) { SetPreAction(std::move(value)); return *this;} /** *A SQL string run before the Snowflake connector performs its standard * actions.
*/ inline SnowflakeNodeData& WithPreAction(const char* value) { SetPreAction(value); return *this;} /** *A SQL string run after the Snowflake connector performs its standard * actions.
*/ inline const Aws::String& GetPostAction() const{ return m_postAction; } /** *A SQL string run after the Snowflake connector performs its standard * actions.
*/ inline bool PostActionHasBeenSet() const { return m_postActionHasBeenSet; } /** *A SQL string run after the Snowflake connector performs its standard * actions.
*/ inline void SetPostAction(const Aws::String& value) { m_postActionHasBeenSet = true; m_postAction = value; } /** *A SQL string run after the Snowflake connector performs its standard * actions.
*/ inline void SetPostAction(Aws::String&& value) { m_postActionHasBeenSet = true; m_postAction = std::move(value); } /** *A SQL string run after the Snowflake connector performs its standard * actions.
*/ inline void SetPostAction(const char* value) { m_postActionHasBeenSet = true; m_postAction.assign(value); } /** *A SQL string run after the Snowflake connector performs its standard * actions.
*/ inline SnowflakeNodeData& WithPostAction(const Aws::String& value) { SetPostAction(value); return *this;} /** *A SQL string run after the Snowflake connector performs its standard * actions.
*/ inline SnowflakeNodeData& WithPostAction(Aws::String&& value) { SetPostAction(std::move(value)); return *this;} /** *A SQL string run after the Snowflake connector performs its standard * actions.
*/ inline SnowflakeNodeData& WithPostAction(const char* value) { SetPostAction(value); return *this;} /** *Specifies what action to take when writing to a table with preexisting data.
* Valid values: append
, merge
, truncate
,
* drop
.
Specifies what action to take when writing to a table with preexisting data.
* Valid values: append
, merge
, truncate
,
* drop
.
Specifies what action to take when writing to a table with preexisting data.
* Valid values: append
, merge
, truncate
,
* drop
.
Specifies what action to take when writing to a table with preexisting data.
* Valid values: append
, merge
, truncate
,
* drop
.
Specifies what action to take when writing to a table with preexisting data.
* Valid values: append
, merge
, truncate
,
* drop
.
Specifies what action to take when writing to a table with preexisting data.
* Valid values: append
, merge
, truncate
,
* drop
.
Specifies what action to take when writing to a table with preexisting data.
* Valid values: append
, merge
, truncate
,
* drop
.
Specifies what action to take when writing to a table with preexisting data.
* Valid values: append
, merge
, truncate
,
* drop
.
Used when Action is append
. Specifies the resolution behavior
* when a row already exists. If true, preexisting rows will be updated. If false,
* those rows will be inserted.
Used when Action is append
. Specifies the resolution behavior
* when a row already exists. If true, preexisting rows will be updated. If false,
* those rows will be inserted.
Used when Action is append
. Specifies the resolution behavior
* when a row already exists. If true, preexisting rows will be updated. If false,
* those rows will be inserted.
Used when Action is append
. Specifies the resolution behavior
* when a row already exists. If true, preexisting rows will be updated. If false,
* those rows will be inserted.
Specifies a merge action. Valid values: simple
,
* custom
. If simple, merge behavior is defined by
* MergeWhenMatched
and MergeWhenNotMatched
. If custom,
* defined by MergeClause
.
Specifies a merge action. Valid values: simple
,
* custom
. If simple, merge behavior is defined by
* MergeWhenMatched
and MergeWhenNotMatched
. If custom,
* defined by MergeClause
.
Specifies a merge action. Valid values: simple
,
* custom
. If simple, merge behavior is defined by
* MergeWhenMatched
and MergeWhenNotMatched
. If custom,
* defined by MergeClause
.
Specifies a merge action. Valid values: simple
,
* custom
. If simple, merge behavior is defined by
* MergeWhenMatched
and MergeWhenNotMatched
. If custom,
* defined by MergeClause
.
Specifies a merge action. Valid values: simple
,
* custom
. If simple, merge behavior is defined by
* MergeWhenMatched
and MergeWhenNotMatched
. If custom,
* defined by MergeClause
.
Specifies a merge action. Valid values: simple
,
* custom
. If simple, merge behavior is defined by
* MergeWhenMatched
and MergeWhenNotMatched
. If custom,
* defined by MergeClause
.
Specifies a merge action. Valid values: simple
,
* custom
. If simple, merge behavior is defined by
* MergeWhenMatched
and MergeWhenNotMatched
. If custom,
* defined by MergeClause
.
Specifies a merge action. Valid values: simple
,
* custom
. If simple, merge behavior is defined by
* MergeWhenMatched
and MergeWhenNotMatched
. If custom,
* defined by MergeClause
.
Specifies how to resolve records that match preexisting data when merging.
* Valid values: update
, delete
.
Specifies how to resolve records that match preexisting data when merging.
* Valid values: update
, delete
.
Specifies how to resolve records that match preexisting data when merging.
* Valid values: update
, delete
.
Specifies how to resolve records that match preexisting data when merging.
* Valid values: update
, delete
.
Specifies how to resolve records that match preexisting data when merging.
* Valid values: update
, delete
.
Specifies how to resolve records that match preexisting data when merging.
* Valid values: update
, delete
.
Specifies how to resolve records that match preexisting data when merging.
* Valid values: update
, delete
.
Specifies how to resolve records that match preexisting data when merging.
* Valid values: update
, delete
.
Specifies how to process records that do not match preexisting data when
* merging. Valid values: insert
, none
.
Specifies how to process records that do not match preexisting data when
* merging. Valid values: insert
, none
.
Specifies how to process records that do not match preexisting data when
* merging. Valid values: insert
, none
.
Specifies how to process records that do not match preexisting data when
* merging. Valid values: insert
, none
.
Specifies how to process records that do not match preexisting data when
* merging. Valid values: insert
, none
.
Specifies how to process records that do not match preexisting data when
* merging. Valid values: insert
, none
.
Specifies how to process records that do not match preexisting data when
* merging. Valid values: insert
, none
.
Specifies how to process records that do not match preexisting data when
* merging. Valid values: insert
, none
.
A SQL statement that specifies a custom merge behavior.
*/ inline const Aws::String& GetMergeClause() const{ return m_mergeClause; } /** *A SQL statement that specifies a custom merge behavior.
*/ inline bool MergeClauseHasBeenSet() const { return m_mergeClauseHasBeenSet; } /** *A SQL statement that specifies a custom merge behavior.
*/ inline void SetMergeClause(const Aws::String& value) { m_mergeClauseHasBeenSet = true; m_mergeClause = value; } /** *A SQL statement that specifies a custom merge behavior.
*/ inline void SetMergeClause(Aws::String&& value) { m_mergeClauseHasBeenSet = true; m_mergeClause = std::move(value); } /** *A SQL statement that specifies a custom merge behavior.
*/ inline void SetMergeClause(const char* value) { m_mergeClauseHasBeenSet = true; m_mergeClause.assign(value); } /** *A SQL statement that specifies a custom merge behavior.
*/ inline SnowflakeNodeData& WithMergeClause(const Aws::String& value) { SetMergeClause(value); return *this;} /** *A SQL statement that specifies a custom merge behavior.
*/ inline SnowflakeNodeData& WithMergeClause(Aws::String&& value) { SetMergeClause(std::move(value)); return *this;} /** *A SQL statement that specifies a custom merge behavior.
*/ inline SnowflakeNodeData& WithMergeClause(const char* value) { SetMergeClause(value); return *this;} /** *The name of a staging table used when performing merge
or upsert
* append
actions. Data is written to this table, then moved to
* table
by a generated postaction.
The name of a staging table used when performing merge
or upsert
* append
actions. Data is written to this table, then moved to
* table
by a generated postaction.
The name of a staging table used when performing merge
or upsert
* append
actions. Data is written to this table, then moved to
* table
by a generated postaction.
The name of a staging table used when performing merge
or upsert
* append
actions. Data is written to this table, then moved to
* table
by a generated postaction.
The name of a staging table used when performing merge
or upsert
* append
actions. Data is written to this table, then moved to
* table
by a generated postaction.
The name of a staging table used when performing merge
or upsert
* append
actions. Data is written to this table, then moved to
* table
by a generated postaction.
The name of a staging table used when performing merge
or upsert
* append
actions. Data is written to this table, then moved to
* table
by a generated postaction.
The name of a staging table used when performing merge
or upsert
* append
actions. Data is written to this table, then moved to
* table
by a generated postaction.
Specifies the columns combined to identify a record when detecting matches
* for merges and upserts. A list of structures with value
,
* label
and description
keys. Each structure describes
* a column.