/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include The connector-specific profile properties when using Amazon Redshift.
* See Also:
AWS
* API Reference
The JDBC URL of the Amazon Redshift cluster.
*/ inline const Aws::String& GetDatabaseUrl() const{ return m_databaseUrl; } /** *The JDBC URL of the Amazon Redshift cluster.
*/ inline bool DatabaseUrlHasBeenSet() const { return m_databaseUrlHasBeenSet; } /** *The JDBC URL of the Amazon Redshift cluster.
*/ inline void SetDatabaseUrl(const Aws::String& value) { m_databaseUrlHasBeenSet = true; m_databaseUrl = value; } /** *The JDBC URL of the Amazon Redshift cluster.
*/ inline void SetDatabaseUrl(Aws::String&& value) { m_databaseUrlHasBeenSet = true; m_databaseUrl = std::move(value); } /** *The JDBC URL of the Amazon Redshift cluster.
*/ inline void SetDatabaseUrl(const char* value) { m_databaseUrlHasBeenSet = true; m_databaseUrl.assign(value); } /** *The JDBC URL of the Amazon Redshift cluster.
*/ inline RedshiftConnectorProfileProperties& WithDatabaseUrl(const Aws::String& value) { SetDatabaseUrl(value); return *this;} /** *The JDBC URL of the Amazon Redshift cluster.
*/ inline RedshiftConnectorProfileProperties& WithDatabaseUrl(Aws::String&& value) { SetDatabaseUrl(std::move(value)); return *this;} /** *The JDBC URL of the Amazon Redshift cluster.
*/ inline RedshiftConnectorProfileProperties& WithDatabaseUrl(const char* value) { SetDatabaseUrl(value); return *this;} /** *A name for the associated Amazon S3 bucket.
*/ inline const Aws::String& GetBucketName() const{ return m_bucketName; } /** *A name for the associated Amazon S3 bucket.
*/ inline bool BucketNameHasBeenSet() const { return m_bucketNameHasBeenSet; } /** *A name for the associated Amazon S3 bucket.
*/ inline void SetBucketName(const Aws::String& value) { m_bucketNameHasBeenSet = true; m_bucketName = value; } /** *A name for the associated Amazon S3 bucket.
*/ inline void SetBucketName(Aws::String&& value) { m_bucketNameHasBeenSet = true; m_bucketName = std::move(value); } /** *A name for the associated Amazon S3 bucket.
*/ inline void SetBucketName(const char* value) { m_bucketNameHasBeenSet = true; m_bucketName.assign(value); } /** *A name for the associated Amazon S3 bucket.
*/ inline RedshiftConnectorProfileProperties& WithBucketName(const Aws::String& value) { SetBucketName(value); return *this;} /** *A name for the associated Amazon S3 bucket.
*/ inline RedshiftConnectorProfileProperties& WithBucketName(Aws::String&& value) { SetBucketName(std::move(value)); return *this;} /** *A name for the associated Amazon S3 bucket.
*/ inline RedshiftConnectorProfileProperties& WithBucketName(const char* value) { SetBucketName(value); return *this;} /** *The object key for the destination bucket in which Amazon AppFlow places the * files.
*/ inline const Aws::String& GetBucketPrefix() const{ return m_bucketPrefix; } /** *The object key for the destination bucket in which Amazon AppFlow places the * files.
*/ inline bool BucketPrefixHasBeenSet() const { return m_bucketPrefixHasBeenSet; } /** *The object key for the destination bucket in which Amazon AppFlow places the * files.
*/ inline void SetBucketPrefix(const Aws::String& value) { m_bucketPrefixHasBeenSet = true; m_bucketPrefix = value; } /** *The object key for the destination bucket in which Amazon AppFlow places the * files.
*/ inline void SetBucketPrefix(Aws::String&& value) { m_bucketPrefixHasBeenSet = true; m_bucketPrefix = std::move(value); } /** *The object key for the destination bucket in which Amazon AppFlow places the * files.
*/ inline void SetBucketPrefix(const char* value) { m_bucketPrefixHasBeenSet = true; m_bucketPrefix.assign(value); } /** *The object key for the destination bucket in which Amazon AppFlow places the * files.
*/ inline RedshiftConnectorProfileProperties& WithBucketPrefix(const Aws::String& value) { SetBucketPrefix(value); return *this;} /** *The object key for the destination bucket in which Amazon AppFlow places the * files.
*/ inline RedshiftConnectorProfileProperties& WithBucketPrefix(Aws::String&& value) { SetBucketPrefix(std::move(value)); return *this;} /** *The object key for the destination bucket in which Amazon AppFlow places the * files.
*/ inline RedshiftConnectorProfileProperties& WithBucketPrefix(const char* value) { SetBucketPrefix(value); return *this;} /** *The Amazon Resource Name (ARN) of IAM role that grants Amazon Redshift * read-only access to Amazon S3. For more information, and for the polices that * you attach to this role, see Allow * Amazon Redshift to access your Amazon AppFlow data in Amazon S3.
*/ inline const Aws::String& GetRoleArn() const{ return m_roleArn; } /** *The Amazon Resource Name (ARN) of IAM role that grants Amazon Redshift * read-only access to Amazon S3. For more information, and for the polices that * you attach to this role, see Allow * Amazon Redshift to access your Amazon AppFlow data in Amazon S3.
*/ inline bool RoleArnHasBeenSet() const { return m_roleArnHasBeenSet; } /** *The Amazon Resource Name (ARN) of IAM role that grants Amazon Redshift * read-only access to Amazon S3. For more information, and for the polices that * you attach to this role, see Allow * Amazon Redshift to access your Amazon AppFlow data in Amazon S3.
*/ inline void SetRoleArn(const Aws::String& value) { m_roleArnHasBeenSet = true; m_roleArn = value; } /** *The Amazon Resource Name (ARN) of IAM role that grants Amazon Redshift * read-only access to Amazon S3. For more information, and for the polices that * you attach to this role, see Allow * Amazon Redshift to access your Amazon AppFlow data in Amazon S3.
*/ inline void SetRoleArn(Aws::String&& value) { m_roleArnHasBeenSet = true; m_roleArn = std::move(value); } /** *The Amazon Resource Name (ARN) of IAM role that grants Amazon Redshift * read-only access to Amazon S3. For more information, and for the polices that * you attach to this role, see Allow * Amazon Redshift to access your Amazon AppFlow data in Amazon S3.
*/ inline void SetRoleArn(const char* value) { m_roleArnHasBeenSet = true; m_roleArn.assign(value); } /** *The Amazon Resource Name (ARN) of IAM role that grants Amazon Redshift * read-only access to Amazon S3. For more information, and for the polices that * you attach to this role, see Allow * Amazon Redshift to access your Amazon AppFlow data in Amazon S3.
*/ inline RedshiftConnectorProfileProperties& WithRoleArn(const Aws::String& value) { SetRoleArn(value); return *this;} /** *The Amazon Resource Name (ARN) of IAM role that grants Amazon Redshift * read-only access to Amazon S3. For more information, and for the polices that * you attach to this role, see Allow * Amazon Redshift to access your Amazon AppFlow data in Amazon S3.
*/ inline RedshiftConnectorProfileProperties& WithRoleArn(Aws::String&& value) { SetRoleArn(std::move(value)); return *this;} /** *The Amazon Resource Name (ARN) of IAM role that grants Amazon Redshift * read-only access to Amazon S3. For more information, and for the polices that * you attach to this role, see Allow * Amazon Redshift to access your Amazon AppFlow data in Amazon S3.
*/ inline RedshiftConnectorProfileProperties& WithRoleArn(const char* value) { SetRoleArn(value); return *this;} /** *The Amazon Resource Name (ARN) of an IAM role that permits Amazon AppFlow to * access your Amazon Redshift database through the Data API. For more information, * and for the polices that you attach to this role, see Allow * Amazon AppFlow to access Amazon Redshift databases with the Data API.
*/ inline const Aws::String& GetDataApiRoleArn() const{ return m_dataApiRoleArn; } /** *The Amazon Resource Name (ARN) of an IAM role that permits Amazon AppFlow to * access your Amazon Redshift database through the Data API. For more information, * and for the polices that you attach to this role, see Allow * Amazon AppFlow to access Amazon Redshift databases with the Data API.
*/ inline bool DataApiRoleArnHasBeenSet() const { return m_dataApiRoleArnHasBeenSet; } /** *The Amazon Resource Name (ARN) of an IAM role that permits Amazon AppFlow to * access your Amazon Redshift database through the Data API. For more information, * and for the polices that you attach to this role, see Allow * Amazon AppFlow to access Amazon Redshift databases with the Data API.
*/ inline void SetDataApiRoleArn(const Aws::String& value) { m_dataApiRoleArnHasBeenSet = true; m_dataApiRoleArn = value; } /** *The Amazon Resource Name (ARN) of an IAM role that permits Amazon AppFlow to * access your Amazon Redshift database through the Data API. For more information, * and for the polices that you attach to this role, see Allow * Amazon AppFlow to access Amazon Redshift databases with the Data API.
*/ inline void SetDataApiRoleArn(Aws::String&& value) { m_dataApiRoleArnHasBeenSet = true; m_dataApiRoleArn = std::move(value); } /** *The Amazon Resource Name (ARN) of an IAM role that permits Amazon AppFlow to * access your Amazon Redshift database through the Data API. For more information, * and for the polices that you attach to this role, see Allow * Amazon AppFlow to access Amazon Redshift databases with the Data API.
*/ inline void SetDataApiRoleArn(const char* value) { m_dataApiRoleArnHasBeenSet = true; m_dataApiRoleArn.assign(value); } /** *The Amazon Resource Name (ARN) of an IAM role that permits Amazon AppFlow to * access your Amazon Redshift database through the Data API. For more information, * and for the polices that you attach to this role, see Allow * Amazon AppFlow to access Amazon Redshift databases with the Data API.
*/ inline RedshiftConnectorProfileProperties& WithDataApiRoleArn(const Aws::String& value) { SetDataApiRoleArn(value); return *this;} /** *The Amazon Resource Name (ARN) of an IAM role that permits Amazon AppFlow to * access your Amazon Redshift database through the Data API. For more information, * and for the polices that you attach to this role, see Allow * Amazon AppFlow to access Amazon Redshift databases with the Data API.
*/ inline RedshiftConnectorProfileProperties& WithDataApiRoleArn(Aws::String&& value) { SetDataApiRoleArn(std::move(value)); return *this;} /** *The Amazon Resource Name (ARN) of an IAM role that permits Amazon AppFlow to * access your Amazon Redshift database through the Data API. For more information, * and for the polices that you attach to this role, see Allow * Amazon AppFlow to access Amazon Redshift databases with the Data API.
*/ inline RedshiftConnectorProfileProperties& WithDataApiRoleArn(const char* value) { SetDataApiRoleArn(value); return *this;} /** *Indicates whether the connector profile defines a connection to an Amazon * Redshift Serverless data warehouse.
*/ inline bool GetIsRedshiftServerless() const{ return m_isRedshiftServerless; } /** *Indicates whether the connector profile defines a connection to an Amazon * Redshift Serverless data warehouse.
*/ inline bool IsRedshiftServerlessHasBeenSet() const { return m_isRedshiftServerlessHasBeenSet; } /** *Indicates whether the connector profile defines a connection to an Amazon * Redshift Serverless data warehouse.
*/ inline void SetIsRedshiftServerless(bool value) { m_isRedshiftServerlessHasBeenSet = true; m_isRedshiftServerless = value; } /** *Indicates whether the connector profile defines a connection to an Amazon * Redshift Serverless data warehouse.
*/ inline RedshiftConnectorProfileProperties& WithIsRedshiftServerless(bool value) { SetIsRedshiftServerless(value); return *this;} /** *The unique ID that's assigned to an Amazon Redshift cluster.
*/ inline const Aws::String& GetClusterIdentifier() const{ return m_clusterIdentifier; } /** *The unique ID that's assigned to an Amazon Redshift cluster.
*/ inline bool ClusterIdentifierHasBeenSet() const { return m_clusterIdentifierHasBeenSet; } /** *The unique ID that's assigned to an Amazon Redshift cluster.
*/ inline void SetClusterIdentifier(const Aws::String& value) { m_clusterIdentifierHasBeenSet = true; m_clusterIdentifier = value; } /** *The unique ID that's assigned to an Amazon Redshift cluster.
*/ inline void SetClusterIdentifier(Aws::String&& value) { m_clusterIdentifierHasBeenSet = true; m_clusterIdentifier = std::move(value); } /** *The unique ID that's assigned to an Amazon Redshift cluster.
*/ inline void SetClusterIdentifier(const char* value) { m_clusterIdentifierHasBeenSet = true; m_clusterIdentifier.assign(value); } /** *The unique ID that's assigned to an Amazon Redshift cluster.
*/ inline RedshiftConnectorProfileProperties& WithClusterIdentifier(const Aws::String& value) { SetClusterIdentifier(value); return *this;} /** *The unique ID that's assigned to an Amazon Redshift cluster.
*/ inline RedshiftConnectorProfileProperties& WithClusterIdentifier(Aws::String&& value) { SetClusterIdentifier(std::move(value)); return *this;} /** *The unique ID that's assigned to an Amazon Redshift cluster.
*/ inline RedshiftConnectorProfileProperties& WithClusterIdentifier(const char* value) { SetClusterIdentifier(value); return *this;} /** *The name of an Amazon Redshift workgroup.
*/ inline const Aws::String& GetWorkgroupName() const{ return m_workgroupName; } /** *The name of an Amazon Redshift workgroup.
*/ inline bool WorkgroupNameHasBeenSet() const { return m_workgroupNameHasBeenSet; } /** *The name of an Amazon Redshift workgroup.
*/ inline void SetWorkgroupName(const Aws::String& value) { m_workgroupNameHasBeenSet = true; m_workgroupName = value; } /** *The name of an Amazon Redshift workgroup.
*/ inline void SetWorkgroupName(Aws::String&& value) { m_workgroupNameHasBeenSet = true; m_workgroupName = std::move(value); } /** *The name of an Amazon Redshift workgroup.
*/ inline void SetWorkgroupName(const char* value) { m_workgroupNameHasBeenSet = true; m_workgroupName.assign(value); } /** *The name of an Amazon Redshift workgroup.
*/ inline RedshiftConnectorProfileProperties& WithWorkgroupName(const Aws::String& value) { SetWorkgroupName(value); return *this;} /** *The name of an Amazon Redshift workgroup.
*/ inline RedshiftConnectorProfileProperties& WithWorkgroupName(Aws::String&& value) { SetWorkgroupName(std::move(value)); return *this;} /** *The name of an Amazon Redshift workgroup.
*/ inline RedshiftConnectorProfileProperties& WithWorkgroupName(const char* value) { SetWorkgroupName(value); return *this;} /** *The name of an Amazon Redshift database.
*/ inline const Aws::String& GetDatabaseName() const{ return m_databaseName; } /** *The name of an Amazon Redshift database.
*/ inline bool DatabaseNameHasBeenSet() const { return m_databaseNameHasBeenSet; } /** *The name of an Amazon Redshift database.
*/ inline void SetDatabaseName(const Aws::String& value) { m_databaseNameHasBeenSet = true; m_databaseName = value; } /** *The name of an Amazon Redshift database.
*/ inline void SetDatabaseName(Aws::String&& value) { m_databaseNameHasBeenSet = true; m_databaseName = std::move(value); } /** *The name of an Amazon Redshift database.
*/ inline void SetDatabaseName(const char* value) { m_databaseNameHasBeenSet = true; m_databaseName.assign(value); } /** *The name of an Amazon Redshift database.
*/ inline RedshiftConnectorProfileProperties& WithDatabaseName(const Aws::String& value) { SetDatabaseName(value); return *this;} /** *The name of an Amazon Redshift database.
*/ inline RedshiftConnectorProfileProperties& WithDatabaseName(Aws::String&& value) { SetDatabaseName(std::move(value)); return *this;} /** *The name of an Amazon Redshift database.
*/ inline RedshiftConnectorProfileProperties& WithDatabaseName(const char* value) { SetDatabaseName(value); return *this;} private: Aws::String m_databaseUrl; bool m_databaseUrlHasBeenSet = false; Aws::String m_bucketName; bool m_bucketNameHasBeenSet = false; Aws::String m_bucketPrefix; bool m_bucketPrefixHasBeenSet = false; Aws::String m_roleArn; bool m_roleArnHasBeenSet = false; Aws::String m_dataApiRoleArn; bool m_dataApiRoleArnHasBeenSet = false; bool m_isRedshiftServerless; bool m_isRedshiftServerlessHasBeenSet = false; Aws::String m_clusterIdentifier; bool m_clusterIdentifierHasBeenSet = false; Aws::String m_workgroupName; bool m_workgroupNameHasBeenSet = false; Aws::String m_databaseName; bool m_databaseNameHasBeenSet = false; }; } // namespace Model } // namespace Appflow } // namespace Aws