/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include The options to configure an upsert operation when writing to a Redshift
* target .See Also:
AWS
* API Reference
The physical location of the Redshift table.
*/ inline const Aws::String& GetTableLocation() const{ return m_tableLocation; } /** *The physical location of the Redshift table.
*/ inline bool TableLocationHasBeenSet() const { return m_tableLocationHasBeenSet; } /** *The physical location of the Redshift table.
*/ inline void SetTableLocation(const Aws::String& value) { m_tableLocationHasBeenSet = true; m_tableLocation = value; } /** *The physical location of the Redshift table.
*/ inline void SetTableLocation(Aws::String&& value) { m_tableLocationHasBeenSet = true; m_tableLocation = std::move(value); } /** *The physical location of the Redshift table.
*/ inline void SetTableLocation(const char* value) { m_tableLocationHasBeenSet = true; m_tableLocation.assign(value); } /** *The physical location of the Redshift table.
*/ inline UpsertRedshiftTargetOptions& WithTableLocation(const Aws::String& value) { SetTableLocation(value); return *this;} /** *The physical location of the Redshift table.
*/ inline UpsertRedshiftTargetOptions& WithTableLocation(Aws::String&& value) { SetTableLocation(std::move(value)); return *this;} /** *The physical location of the Redshift table.
*/ inline UpsertRedshiftTargetOptions& WithTableLocation(const char* value) { SetTableLocation(value); return *this;} /** *The name of the connection to use to write to Redshift.
*/ inline const Aws::String& GetConnectionName() const{ return m_connectionName; } /** *The name of the connection to use to write to Redshift.
*/ inline bool ConnectionNameHasBeenSet() const { return m_connectionNameHasBeenSet; } /** *The name of the connection to use to write to Redshift.
*/ inline void SetConnectionName(const Aws::String& value) { m_connectionNameHasBeenSet = true; m_connectionName = value; } /** *The name of the connection to use to write to Redshift.
*/ inline void SetConnectionName(Aws::String&& value) { m_connectionNameHasBeenSet = true; m_connectionName = std::move(value); } /** *The name of the connection to use to write to Redshift.
*/ inline void SetConnectionName(const char* value) { m_connectionNameHasBeenSet = true; m_connectionName.assign(value); } /** *The name of the connection to use to write to Redshift.
*/ inline UpsertRedshiftTargetOptions& WithConnectionName(const Aws::String& value) { SetConnectionName(value); return *this;} /** *The name of the connection to use to write to Redshift.
*/ inline UpsertRedshiftTargetOptions& WithConnectionName(Aws::String&& value) { SetConnectionName(std::move(value)); return *this;} /** *The name of the connection to use to write to Redshift.
*/ inline UpsertRedshiftTargetOptions& WithConnectionName(const char* value) { SetConnectionName(value); return *this;} /** *The keys used to determine whether to perform an update or insert.
*/ inline const Aws::VectorThe keys used to determine whether to perform an update or insert.
*/ inline bool UpsertKeysHasBeenSet() const { return m_upsertKeysHasBeenSet; } /** *The keys used to determine whether to perform an update or insert.
*/ inline void SetUpsertKeys(const Aws::VectorThe keys used to determine whether to perform an update or insert.
*/ inline void SetUpsertKeys(Aws::VectorThe keys used to determine whether to perform an update or insert.
*/ inline UpsertRedshiftTargetOptions& WithUpsertKeys(const Aws::VectorThe keys used to determine whether to perform an update or insert.
*/ inline UpsertRedshiftTargetOptions& WithUpsertKeys(Aws::VectorThe keys used to determine whether to perform an update or insert.
*/ inline UpsertRedshiftTargetOptions& AddUpsertKeys(const Aws::String& value) { m_upsertKeysHasBeenSet = true; m_upsertKeys.push_back(value); return *this; } /** *The keys used to determine whether to perform an update or insert.
*/ inline UpsertRedshiftTargetOptions& AddUpsertKeys(Aws::String&& value) { m_upsertKeysHasBeenSet = true; m_upsertKeys.push_back(std::move(value)); return *this; } /** *The keys used to determine whether to perform an update or insert.
*/ inline UpsertRedshiftTargetOptions& AddUpsertKeys(const char* value) { m_upsertKeysHasBeenSet = true; m_upsertKeys.push_back(value); return *this; } private: Aws::String m_tableLocation; bool m_tableLocationHasBeenSet = false; Aws::String m_connectionName; bool m_connectionNameHasBeenSet = false; Aws::Vector