/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Provides the configuration information that's required to connect to a
* database.See Also:
AWS
* API Reference
The name of the host for the database. Can be either a string * (host.subdomain.domain.tld) or an IPv4 or IPv6 address.
*/ inline const Aws::String& GetDatabaseHost() const{ return m_databaseHost; } /** *The name of the host for the database. Can be either a string * (host.subdomain.domain.tld) or an IPv4 or IPv6 address.
*/ inline bool DatabaseHostHasBeenSet() const { return m_databaseHostHasBeenSet; } /** *The name of the host for the database. Can be either a string * (host.subdomain.domain.tld) or an IPv4 or IPv6 address.
*/ inline void SetDatabaseHost(const Aws::String& value) { m_databaseHostHasBeenSet = true; m_databaseHost = value; } /** *The name of the host for the database. Can be either a string * (host.subdomain.domain.tld) or an IPv4 or IPv6 address.
*/ inline void SetDatabaseHost(Aws::String&& value) { m_databaseHostHasBeenSet = true; m_databaseHost = std::move(value); } /** *The name of the host for the database. Can be either a string * (host.subdomain.domain.tld) or an IPv4 or IPv6 address.
*/ inline void SetDatabaseHost(const char* value) { m_databaseHostHasBeenSet = true; m_databaseHost.assign(value); } /** *The name of the host for the database. Can be either a string * (host.subdomain.domain.tld) or an IPv4 or IPv6 address.
*/ inline ConnectionConfiguration& WithDatabaseHost(const Aws::String& value) { SetDatabaseHost(value); return *this;} /** *The name of the host for the database. Can be either a string * (host.subdomain.domain.tld) or an IPv4 or IPv6 address.
*/ inline ConnectionConfiguration& WithDatabaseHost(Aws::String&& value) { SetDatabaseHost(std::move(value)); return *this;} /** *The name of the host for the database. Can be either a string * (host.subdomain.domain.tld) or an IPv4 or IPv6 address.
*/ inline ConnectionConfiguration& WithDatabaseHost(const char* value) { SetDatabaseHost(value); return *this;} /** *The port that the database uses for connections.
*/ inline int GetDatabasePort() const{ return m_databasePort; } /** *The port that the database uses for connections.
*/ inline bool DatabasePortHasBeenSet() const { return m_databasePortHasBeenSet; } /** *The port that the database uses for connections.
*/ inline void SetDatabasePort(int value) { m_databasePortHasBeenSet = true; m_databasePort = value; } /** *The port that the database uses for connections.
*/ inline ConnectionConfiguration& WithDatabasePort(int value) { SetDatabasePort(value); return *this;} /** *The name of the database containing the document data.
*/ inline const Aws::String& GetDatabaseName() const{ return m_databaseName; } /** *The name of the database containing the document data.
*/ inline bool DatabaseNameHasBeenSet() const { return m_databaseNameHasBeenSet; } /** *The name of the database containing the document data.
*/ inline void SetDatabaseName(const Aws::String& value) { m_databaseNameHasBeenSet = true; m_databaseName = value; } /** *The name of the database containing the document data.
*/ inline void SetDatabaseName(Aws::String&& value) { m_databaseNameHasBeenSet = true; m_databaseName = std::move(value); } /** *The name of the database containing the document data.
*/ inline void SetDatabaseName(const char* value) { m_databaseNameHasBeenSet = true; m_databaseName.assign(value); } /** *The name of the database containing the document data.
*/ inline ConnectionConfiguration& WithDatabaseName(const Aws::String& value) { SetDatabaseName(value); return *this;} /** *The name of the database containing the document data.
*/ inline ConnectionConfiguration& WithDatabaseName(Aws::String&& value) { SetDatabaseName(std::move(value)); return *this;} /** *The name of the database containing the document data.
*/ inline ConnectionConfiguration& WithDatabaseName(const char* value) { SetDatabaseName(value); return *this;} /** *The name of the table that contains the document data.
*/ inline const Aws::String& GetTableName() const{ return m_tableName; } /** *The name of the table that contains the document data.
*/ inline bool TableNameHasBeenSet() const { return m_tableNameHasBeenSet; } /** *The name of the table that contains the document data.
*/ inline void SetTableName(const Aws::String& value) { m_tableNameHasBeenSet = true; m_tableName = value; } /** *The name of the table that contains the document data.
*/ inline void SetTableName(Aws::String&& value) { m_tableNameHasBeenSet = true; m_tableName = std::move(value); } /** *The name of the table that contains the document data.
*/ inline void SetTableName(const char* value) { m_tableNameHasBeenSet = true; m_tableName.assign(value); } /** *The name of the table that contains the document data.
*/ inline ConnectionConfiguration& WithTableName(const Aws::String& value) { SetTableName(value); return *this;} /** *The name of the table that contains the document data.
*/ inline ConnectionConfiguration& WithTableName(Aws::String&& value) { SetTableName(std::move(value)); return *this;} /** *The name of the table that contains the document data.
*/ inline ConnectionConfiguration& WithTableName(const char* value) { SetTableName(value); return *this;} /** *The Amazon Resource Name (ARN) of credentials stored in Secrets Manager. The * credentials should be a user/password pair. For more information, see Using * a Database Data Source. For more information about Secrets Manager, see * What Is Secrets Manager in the Secrets Manager user guide.
*/ inline const Aws::String& GetSecretArn() const{ return m_secretArn; } /** *The Amazon Resource Name (ARN) of credentials stored in Secrets Manager. The * credentials should be a user/password pair. For more information, see Using * a Database Data Source. For more information about Secrets Manager, see * What Is Secrets Manager in the Secrets Manager user guide.
*/ inline bool SecretArnHasBeenSet() const { return m_secretArnHasBeenSet; } /** *The Amazon Resource Name (ARN) of credentials stored in Secrets Manager. The * credentials should be a user/password pair. For more information, see Using * a Database Data Source. For more information about Secrets Manager, see * What Is Secrets Manager in the Secrets Manager user guide.
*/ inline void SetSecretArn(const Aws::String& value) { m_secretArnHasBeenSet = true; m_secretArn = value; } /** *The Amazon Resource Name (ARN) of credentials stored in Secrets Manager. The * credentials should be a user/password pair. For more information, see Using * a Database Data Source. For more information about Secrets Manager, see * What Is Secrets Manager in the Secrets Manager user guide.
*/ inline void SetSecretArn(Aws::String&& value) { m_secretArnHasBeenSet = true; m_secretArn = std::move(value); } /** *The Amazon Resource Name (ARN) of credentials stored in Secrets Manager. The * credentials should be a user/password pair. For more information, see Using * a Database Data Source. For more information about Secrets Manager, see * What Is Secrets Manager in the Secrets Manager user guide.
*/ inline void SetSecretArn(const char* value) { m_secretArnHasBeenSet = true; m_secretArn.assign(value); } /** *The Amazon Resource Name (ARN) of credentials stored in Secrets Manager. The * credentials should be a user/password pair. For more information, see Using * a Database Data Source. For more information about Secrets Manager, see * What Is Secrets Manager in the Secrets Manager user guide.
*/ inline ConnectionConfiguration& WithSecretArn(const Aws::String& value) { SetSecretArn(value); return *this;} /** *The Amazon Resource Name (ARN) of credentials stored in Secrets Manager. The * credentials should be a user/password pair. For more information, see Using * a Database Data Source. For more information about Secrets Manager, see * What Is Secrets Manager in the Secrets Manager user guide.
*/ inline ConnectionConfiguration& WithSecretArn(Aws::String&& value) { SetSecretArn(std::move(value)); return *this;} /** *The Amazon Resource Name (ARN) of credentials stored in Secrets Manager. The * credentials should be a user/password pair. For more information, see Using * a Database Data Source. For more information about Secrets Manager, see * What Is Secrets Manager in the Secrets Manager user guide.
*/ inline ConnectionConfiguration& WithSecretArn(const char* value) { SetSecretArn(value); return *this;} private: Aws::String m_databaseHost; bool m_databaseHostHasBeenSet = false; int m_databasePort; bool m_databasePortHasBeenSet = false; Aws::String m_databaseName; bool m_databaseNameHasBeenSet = false; Aws::String m_tableName; bool m_tableNameHasBeenSet = false; Aws::String m_secretArn; bool m_secretArnHasBeenSet = false; }; } // namespace Model } // namespace kendra } // namespace Aws