7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/glue/Glue_EXPORTS.h>
10#include <aws/glue/model/AmazonRedshiftAdvancedOption.h>
11#include <aws/glue/model/Option.h>
44 template <
typename AccessTypeT = Aws::String>
46 m_accessTypeHasBeenSet =
true;
47 m_accessType = std::forward<AccessTypeT>(value);
49 template <
typename AccessTypeT = Aws::String>
63 template <
typename SourceTypeT = Aws::String>
65 m_sourceTypeHasBeenSet =
true;
66 m_sourceType = std::forward<SourceTypeT>(value);
68 template <
typename SourceTypeT = Aws::String>
81 template <
typename ConnectionT = Option>
83 m_connectionHasBeenSet =
true;
84 m_connection = std::forward<ConnectionT>(value);
86 template <
typename ConnectionT = Option>
99 template <
typename SchemaT = Option>
101 m_schemaHasBeenSet =
true;
102 m_schema = std::forward<SchemaT>(value);
104 template <
typename SchemaT = Option>
117 template <
typename TableT = Option>
119 m_tableHasBeenSet =
true;
120 m_table = std::forward<TableT>(value);
122 template <
typename TableT = Option>
124 SetTable(std::forward<TableT>(value));
136 template <
typename CatalogDatabaseT = Option>
138 m_catalogDatabaseHasBeenSet =
true;
139 m_catalogDatabase = std::forward<CatalogDatabaseT>(value);
141 template <
typename CatalogDatabaseT = Option>
154 template <
typename CatalogTableT = Option>
156 m_catalogTableHasBeenSet =
true;
157 m_catalogTable = std::forward<CatalogTableT>(value);
159 template <
typename CatalogTableT = Option>
172 template <
typename CatalogRedshiftSchemaT = Aws::String>
174 m_catalogRedshiftSchemaHasBeenSet =
true;
175 m_catalogRedshiftSchema = std::forward<CatalogRedshiftSchemaT>(value);
177 template <
typename CatalogRedshiftSchemaT = Aws::String>
190 template <
typename CatalogRedshiftTableT = Aws::String>
192 m_catalogRedshiftTableHasBeenSet =
true;
193 m_catalogRedshiftTable = std::forward<CatalogRedshiftTableT>(value);
195 template <
typename CatalogRedshiftTableT = Aws::String>
209 template <
typename TempDirT = Aws::String>
211 m_tempDirHasBeenSet =
true;
212 m_tempDir = std::forward<TempDirT>(value);
214 template <
typename TempDirT = Aws::String>
228 template <
typename IamRoleT = Option>
230 m_iamRoleHasBeenSet =
true;
231 m_iamRole = std::forward<IamRoleT>(value);
233 template <
typename IamRoleT = Option>
246 template <
typename AdvancedOptionsT = Aws::Vector<AmazonRedshiftAdvancedOption>>
248 m_advancedOptionsHasBeenSet =
true;
249 m_advancedOptions = std::forward<AdvancedOptionsT>(value);
251 template <
typename AdvancedOptionsT = Aws::Vector<AmazonRedshiftAdvancedOption>>
256 template <
typename AdvancedOptionsT = AmazonRedshiftAdvancedOption>
258 m_advancedOptionsHasBeenSet =
true;
259 m_advancedOptions.emplace_back(std::forward<AdvancedOptionsT>(value));
271 template <
typename SampleQueryT = Aws::String>
273 m_sampleQueryHasBeenSet =
true;
274 m_sampleQuery = std::forward<SampleQueryT>(value);
276 template <
typename SampleQueryT = Aws::String>
289 template <
typename PreActionT = Aws::String>
291 m_preActionHasBeenSet =
true;
292 m_preAction = std::forward<PreActionT>(value);
294 template <
typename PreActionT = Aws::String>
307 template <
typename PostActionT = Aws::String>
309 m_postActionHasBeenSet =
true;
310 m_postAction = std::forward<PostActionT>(value);
312 template <
typename PostActionT = Aws::String>
325 template <
typename ActionT = Aws::String>
327 m_actionHasBeenSet =
true;
328 m_action = std::forward<ActionT>(value);
330 template <
typename ActionT = Aws::String>
343 template <
typename TablePrefixT = Aws::String>
345 m_tablePrefixHasBeenSet =
true;
346 m_tablePrefix = std::forward<TablePrefixT>(value);
348 template <
typename TablePrefixT = Aws::String>
362 m_upsertHasBeenSet =
true;
378 template <
typename MergeActionT = Aws::String>
380 m_mergeActionHasBeenSet =
true;
381 m_mergeAction = std::forward<MergeActionT>(value);
383 template <
typename MergeActionT = Aws::String>
397 template <
typename MergeWhenMatchedT = Aws::String>
399 m_mergeWhenMatchedHasBeenSet =
true;
400 m_mergeWhenMatched = std::forward<MergeWhenMatchedT>(value);
402 template <
typename MergeWhenMatchedT = Aws::String>
416 template <
typename MergeWhenNotMatchedT = Aws::String>
418 m_mergeWhenNotMatchedHasBeenSet =
true;
419 m_mergeWhenNotMatched = std::forward<MergeWhenNotMatchedT>(value);
421 template <
typename MergeWhenNotMatchedT = Aws::String>
434 template <
typename MergeClauseT = Aws::String>
436 m_mergeClauseHasBeenSet =
true;
437 m_mergeClause = std::forward<MergeClauseT>(value);
439 template <
typename MergeClauseT = Aws::String>
453 template <
typename CrawlerConnectionT = Aws::String>
455 m_crawlerConnectionHasBeenSet =
true;
456 m_crawlerConnection = std::forward<CrawlerConnectionT>(value);
458 template <
typename CrawlerConnectionT = Aws::String>
471 template <
typename TableSchemaT = Aws::Vector<Option>>
473 m_tableSchemaHasBeenSet =
true;
474 m_tableSchema = std::forward<TableSchemaT>(value);
476 template <
typename TableSchemaT = Aws::Vector<Option>>
481 template <
typename TableSchemaT = Option>
483 m_tableSchemaHasBeenSet =
true;
484 m_tableSchema.emplace_back(std::forward<TableSchemaT>(value));
496 template <
typename StagingTableT = Aws::String>
498 m_stagingTableHasBeenSet =
true;
499 m_stagingTable = std::forward<StagingTableT>(value);
501 template <
typename StagingTableT = Aws::String>
515 template <
typename SelectedColumnsT = Aws::Vector<Option>>
517 m_selectedColumnsHasBeenSet =
true;
518 m_selectedColumns = std::forward<SelectedColumnsT>(value);
520 template <
typename SelectedColumnsT = Aws::Vector<Option>>
525 template <
typename SelectedColumnsT = Option>
527 m_selectedColumnsHasBeenSet =
true;
528 m_selectedColumns.emplace_back(std::forward<SelectedColumnsT>(value));
567 bool m_upsert{
false};
584 bool m_accessTypeHasBeenSet =
false;
585 bool m_sourceTypeHasBeenSet =
false;
586 bool m_connectionHasBeenSet =
false;
587 bool m_schemaHasBeenSet =
false;
588 bool m_tableHasBeenSet =
false;
589 bool m_catalogDatabaseHasBeenSet =
false;
590 bool m_catalogTableHasBeenSet =
false;
591 bool m_catalogRedshiftSchemaHasBeenSet =
false;
592 bool m_catalogRedshiftTableHasBeenSet =
false;
593 bool m_tempDirHasBeenSet =
false;
594 bool m_iamRoleHasBeenSet =
false;
595 bool m_advancedOptionsHasBeenSet =
false;
596 bool m_sampleQueryHasBeenSet =
false;
597 bool m_preActionHasBeenSet =
false;
598 bool m_postActionHasBeenSet =
false;
599 bool m_actionHasBeenSet =
false;
600 bool m_tablePrefixHasBeenSet =
false;
601 bool m_upsertHasBeenSet =
false;
602 bool m_mergeActionHasBeenSet =
false;
603 bool m_mergeWhenMatchedHasBeenSet =
false;
604 bool m_mergeWhenNotMatchedHasBeenSet =
false;
605 bool m_mergeClauseHasBeenSet =
false;
606 bool m_crawlerConnectionHasBeenSet =
false;
607 bool m_tableSchemaHasBeenSet =
false;
608 bool m_stagingTableHasBeenSet =
false;
609 bool m_selectedColumnsHasBeenSet =
false;
void SetAccessType(AccessTypeT &&value)
AmazonRedshiftNodeData & WithTempDir(TempDirT &&value)
void SetCatalogRedshiftSchema(CatalogRedshiftSchemaT &&value)
bool AccessTypeHasBeenSet() const
bool IamRoleHasBeenSet() const
void SetMergeAction(MergeActionT &&value)
const Aws::String & GetMergeWhenNotMatched() const
AmazonRedshiftNodeData & WithCrawlerConnection(CrawlerConnectionT &&value)
bool AdvancedOptionsHasBeenSet() const
bool TableHasBeenSet() const
void SetSampleQuery(SampleQueryT &&value)
const Aws::String & GetMergeWhenMatched() const
void SetUpsert(bool value)
bool MergeWhenNotMatchedHasBeenSet() const
bool CatalogRedshiftTableHasBeenSet() const
void SetTableSchema(TableSchemaT &&value)
void SetMergeClause(MergeClauseT &&value)
AWS_GLUE_API AmazonRedshiftNodeData(Aws::Utils::Json::JsonView jsonValue)
void SetCatalogDatabase(CatalogDatabaseT &&value)
const Aws::String & GetTempDir() const
AmazonRedshiftNodeData & WithCatalogDatabase(CatalogDatabaseT &&value)
bool CatalogRedshiftSchemaHasBeenSet() const
bool SelectedColumnsHasBeenSet() const
AmazonRedshiftNodeData & WithAction(ActionT &&value)
bool UpsertHasBeenSet() const
bool MergeClauseHasBeenSet() const
const Option & GetCatalogDatabase() const
const Aws::Vector< AmazonRedshiftAdvancedOption > & GetAdvancedOptions() const
bool ConnectionHasBeenSet() const
AmazonRedshiftNodeData & WithAdvancedOptions(AdvancedOptionsT &&value)
void SetPreAction(PreActionT &&value)
AmazonRedshiftNodeData & WithCatalogRedshiftTable(CatalogRedshiftTableT &&value)
AmazonRedshiftNodeData & WithAccessType(AccessTypeT &&value)
void SetStagingTable(StagingTableT &&value)
const Aws::String & GetPreAction() const
const Option & GetSchema() const
AWS_GLUE_API AmazonRedshiftNodeData & operator=(Aws::Utils::Json::JsonView jsonValue)
const Aws::String & GetCatalogRedshiftTable() const
bool TablePrefixHasBeenSet() const
const Aws::String & GetStagingTable() const
AmazonRedshiftNodeData & WithMergeWhenNotMatched(MergeWhenNotMatchedT &&value)
AWS_GLUE_API AmazonRedshiftNodeData()=default
AmazonRedshiftNodeData & WithCatalogRedshiftSchema(CatalogRedshiftSchemaT &&value)
void SetSourceType(SourceTypeT &&value)
bool PostActionHasBeenSet() const
void SetMergeWhenNotMatched(MergeWhenNotMatchedT &&value)
const Aws::String & GetSampleQuery() const
const Aws::Vector< Option > & GetSelectedColumns() const
void SetSelectedColumns(SelectedColumnsT &&value)
AmazonRedshiftNodeData & WithPostAction(PostActionT &&value)
AmazonRedshiftNodeData & AddTableSchema(TableSchemaT &&value)
void SetTable(TableT &&value)
AWS_GLUE_API Aws::Utils::Json::JsonValue Jsonize() const
const Aws::String & GetCrawlerConnection() const
AmazonRedshiftNodeData & WithStagingTable(StagingTableT &&value)
const Aws::String & GetCatalogRedshiftSchema() const
AmazonRedshiftNodeData & WithSampleQuery(SampleQueryT &&value)
AmazonRedshiftNodeData & WithSelectedColumns(SelectedColumnsT &&value)
bool SchemaHasBeenSet() const
AmazonRedshiftNodeData & WithCatalogTable(CatalogTableT &&value)
AmazonRedshiftNodeData & WithSchema(SchemaT &&value)
const Aws::String & GetPostAction() const
void SetCrawlerConnection(CrawlerConnectionT &&value)
void SetCatalogRedshiftTable(CatalogRedshiftTableT &&value)
bool ActionHasBeenSet() const
AmazonRedshiftNodeData & WithSourceType(SourceTypeT &&value)
const Option & GetTable() const
const Option & GetCatalogTable() const
bool TempDirHasBeenSet() const
bool StagingTableHasBeenSet() const
void SetAction(ActionT &&value)
void SetTablePrefix(TablePrefixT &&value)
AmazonRedshiftNodeData & WithMergeClause(MergeClauseT &&value)
void SetPostAction(PostActionT &&value)
AmazonRedshiftNodeData & WithTablePrefix(TablePrefixT &&value)
bool CatalogDatabaseHasBeenSet() const
const Option & GetIamRole() const
bool CrawlerConnectionHasBeenSet() const
void SetMergeWhenMatched(MergeWhenMatchedT &&value)
void SetConnection(ConnectionT &&value)
AmazonRedshiftNodeData & AddAdvancedOptions(AdvancedOptionsT &&value)
AmazonRedshiftNodeData & AddSelectedColumns(SelectedColumnsT &&value)
bool SampleQueryHasBeenSet() const
AmazonRedshiftNodeData & WithPreAction(PreActionT &&value)
const Aws::String & GetAction() const
bool SourceTypeHasBeenSet() const
bool MergeWhenMatchedHasBeenSet() const
const Option & GetConnection() const
AmazonRedshiftNodeData & WithMergeWhenMatched(MergeWhenMatchedT &&value)
bool MergeActionHasBeenSet() const
AmazonRedshiftNodeData & WithTableSchema(TableSchemaT &&value)
const Aws::String & GetTablePrefix() const
bool CatalogTableHasBeenSet() const
const Aws::String & GetSourceType() const
AmazonRedshiftNodeData & WithConnection(ConnectionT &&value)
void SetSchema(SchemaT &&value)
void SetCatalogTable(CatalogTableT &&value)
AmazonRedshiftNodeData & WithIamRole(IamRoleT &&value)
bool TableSchemaHasBeenSet() const
bool PreActionHasBeenSet() const
AmazonRedshiftNodeData & WithTable(TableT &&value)
const Aws::String & GetAccessType() const
const Aws::String & GetMergeClause() const
const Aws::String & GetMergeAction() const
const Aws::Vector< Option > & GetTableSchema() const
AmazonRedshiftNodeData & WithMergeAction(MergeActionT &&value)
void SetAdvancedOptions(AdvancedOptionsT &&value)
void SetTempDir(TempDirT &&value)
void SetIamRole(IamRoleT &&value)
AmazonRedshiftNodeData & WithUpsert(bool value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue