/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace Glue { namespace Model { /** *

Specifies the direct JDBC source connection.

See Also:

AWS * API Reference

*/ class DirectJDBCSource { public: AWS_GLUE_API DirectJDBCSource(); AWS_GLUE_API DirectJDBCSource(Aws::Utils::Json::JsonView jsonValue); AWS_GLUE_API DirectJDBCSource& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_GLUE_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

The name of the JDBC source connection.

*/ inline const Aws::String& GetName() const{ return m_name; } /** *

The name of the JDBC source connection.

*/ inline bool NameHasBeenSet() const { return m_nameHasBeenSet; } /** *

The name of the JDBC source connection.

*/ inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; } /** *

The name of the JDBC source connection.

*/ inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); } /** *

The name of the JDBC source connection.

*/ inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); } /** *

The name of the JDBC source connection.

*/ inline DirectJDBCSource& WithName(const Aws::String& value) { SetName(value); return *this;} /** *

The name of the JDBC source connection.

*/ inline DirectJDBCSource& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;} /** *

The name of the JDBC source connection.

*/ inline DirectJDBCSource& WithName(const char* value) { SetName(value); return *this;} /** *

The database of the JDBC source connection.

*/ inline const Aws::String& GetDatabase() const{ return m_database; } /** *

The database of the JDBC source connection.

*/ inline bool DatabaseHasBeenSet() const { return m_databaseHasBeenSet; } /** *

The database of the JDBC source connection.

*/ inline void SetDatabase(const Aws::String& value) { m_databaseHasBeenSet = true; m_database = value; } /** *

The database of the JDBC source connection.

*/ inline void SetDatabase(Aws::String&& value) { m_databaseHasBeenSet = true; m_database = std::move(value); } /** *

The database of the JDBC source connection.

*/ inline void SetDatabase(const char* value) { m_databaseHasBeenSet = true; m_database.assign(value); } /** *

The database of the JDBC source connection.

*/ inline DirectJDBCSource& WithDatabase(const Aws::String& value) { SetDatabase(value); return *this;} /** *

The database of the JDBC source connection.

*/ inline DirectJDBCSource& WithDatabase(Aws::String&& value) { SetDatabase(std::move(value)); return *this;} /** *

The database of the JDBC source connection.

*/ inline DirectJDBCSource& WithDatabase(const char* value) { SetDatabase(value); return *this;} /** *

The table of the JDBC source connection.

*/ inline const Aws::String& GetTable() const{ return m_table; } /** *

The table of the JDBC source connection.

*/ inline bool TableHasBeenSet() const { return m_tableHasBeenSet; } /** *

The table of the JDBC source connection.

*/ inline void SetTable(const Aws::String& value) { m_tableHasBeenSet = true; m_table = value; } /** *

The table of the JDBC source connection.

*/ inline void SetTable(Aws::String&& value) { m_tableHasBeenSet = true; m_table = std::move(value); } /** *

The table of the JDBC source connection.

*/ inline void SetTable(const char* value) { m_tableHasBeenSet = true; m_table.assign(value); } /** *

The table of the JDBC source connection.

*/ inline DirectJDBCSource& WithTable(const Aws::String& value) { SetTable(value); return *this;} /** *

The table of the JDBC source connection.

*/ inline DirectJDBCSource& WithTable(Aws::String&& value) { SetTable(std::move(value)); return *this;} /** *

The table of the JDBC source connection.

*/ inline DirectJDBCSource& WithTable(const char* value) { SetTable(value); return *this;} /** *

The connection name of the JDBC source.

*/ inline const Aws::String& GetConnectionName() const{ return m_connectionName; } /** *

The connection name of the JDBC source.

*/ inline bool ConnectionNameHasBeenSet() const { return m_connectionNameHasBeenSet; } /** *

The connection name of the JDBC source.

*/ inline void SetConnectionName(const Aws::String& value) { m_connectionNameHasBeenSet = true; m_connectionName = value; } /** *

The connection name of the JDBC source.

*/ inline void SetConnectionName(Aws::String&& value) { m_connectionNameHasBeenSet = true; m_connectionName = std::move(value); } /** *

The connection name of the JDBC source.

*/ inline void SetConnectionName(const char* value) { m_connectionNameHasBeenSet = true; m_connectionName.assign(value); } /** *

The connection name of the JDBC source.

*/ inline DirectJDBCSource& WithConnectionName(const Aws::String& value) { SetConnectionName(value); return *this;} /** *

The connection name of the JDBC source.

*/ inline DirectJDBCSource& WithConnectionName(Aws::String&& value) { SetConnectionName(std::move(value)); return *this;} /** *

The connection name of the JDBC source.

*/ inline DirectJDBCSource& WithConnectionName(const char* value) { SetConnectionName(value); return *this;} /** *

The connection type of the JDBC source.

*/ inline const JDBCConnectionType& GetConnectionType() const{ return m_connectionType; } /** *

The connection type of the JDBC source.

*/ inline bool ConnectionTypeHasBeenSet() const { return m_connectionTypeHasBeenSet; } /** *

The connection type of the JDBC source.

*/ inline void SetConnectionType(const JDBCConnectionType& value) { m_connectionTypeHasBeenSet = true; m_connectionType = value; } /** *

The connection type of the JDBC source.

*/ inline void SetConnectionType(JDBCConnectionType&& value) { m_connectionTypeHasBeenSet = true; m_connectionType = std::move(value); } /** *

The connection type of the JDBC source.

*/ inline DirectJDBCSource& WithConnectionType(const JDBCConnectionType& value) { SetConnectionType(value); return *this;} /** *

The connection type of the JDBC source.

*/ inline DirectJDBCSource& WithConnectionType(JDBCConnectionType&& value) { SetConnectionType(std::move(value)); return *this;} /** *

The temp directory of the JDBC Redshift source.

*/ inline const Aws::String& GetRedshiftTmpDir() const{ return m_redshiftTmpDir; } /** *

The temp directory of the JDBC Redshift source.

*/ inline bool RedshiftTmpDirHasBeenSet() const { return m_redshiftTmpDirHasBeenSet; } /** *

The temp directory of the JDBC Redshift source.

*/ inline void SetRedshiftTmpDir(const Aws::String& value) { m_redshiftTmpDirHasBeenSet = true; m_redshiftTmpDir = value; } /** *

The temp directory of the JDBC Redshift source.

*/ inline void SetRedshiftTmpDir(Aws::String&& value) { m_redshiftTmpDirHasBeenSet = true; m_redshiftTmpDir = std::move(value); } /** *

The temp directory of the JDBC Redshift source.

*/ inline void SetRedshiftTmpDir(const char* value) { m_redshiftTmpDirHasBeenSet = true; m_redshiftTmpDir.assign(value); } /** *

The temp directory of the JDBC Redshift source.

*/ inline DirectJDBCSource& WithRedshiftTmpDir(const Aws::String& value) { SetRedshiftTmpDir(value); return *this;} /** *

The temp directory of the JDBC Redshift source.

*/ inline DirectJDBCSource& WithRedshiftTmpDir(Aws::String&& value) { SetRedshiftTmpDir(std::move(value)); return *this;} /** *

The temp directory of the JDBC Redshift source.

*/ inline DirectJDBCSource& WithRedshiftTmpDir(const char* value) { SetRedshiftTmpDir(value); return *this;} private: Aws::String m_name; bool m_nameHasBeenSet = false; Aws::String m_database; bool m_databaseHasBeenSet = false; Aws::String m_table; bool m_tableHasBeenSet = false; Aws::String m_connectionName; bool m_connectionNameHasBeenSet = false; JDBCConnectionType m_connectionType; bool m_connectionTypeHasBeenSet = false; Aws::String m_redshiftTmpDir; bool m_redshiftTmpDirHasBeenSet = false; }; } // namespace Model } // namespace Glue } // namespace Aws