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

Represents a JDBC database output object which defines the output destination * for a DataBrew recipe job to write into.

See Also:

AWS * API Reference

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

The Glue connection that stores the connection information for the target * database.

*/ inline const Aws::String& GetGlueConnectionName() const{ return m_glueConnectionName; } /** *

The Glue connection that stores the connection information for the target * database.

*/ inline bool GlueConnectionNameHasBeenSet() const { return m_glueConnectionNameHasBeenSet; } /** *

The Glue connection that stores the connection information for the target * database.

*/ inline void SetGlueConnectionName(const Aws::String& value) { m_glueConnectionNameHasBeenSet = true; m_glueConnectionName = value; } /** *

The Glue connection that stores the connection information for the target * database.

*/ inline void SetGlueConnectionName(Aws::String&& value) { m_glueConnectionNameHasBeenSet = true; m_glueConnectionName = std::move(value); } /** *

The Glue connection that stores the connection information for the target * database.

*/ inline void SetGlueConnectionName(const char* value) { m_glueConnectionNameHasBeenSet = true; m_glueConnectionName.assign(value); } /** *

The Glue connection that stores the connection information for the target * database.

*/ inline DatabaseOutput& WithGlueConnectionName(const Aws::String& value) { SetGlueConnectionName(value); return *this;} /** *

The Glue connection that stores the connection information for the target * database.

*/ inline DatabaseOutput& WithGlueConnectionName(Aws::String&& value) { SetGlueConnectionName(std::move(value)); return *this;} /** *

The Glue connection that stores the connection information for the target * database.

*/ inline DatabaseOutput& WithGlueConnectionName(const char* value) { SetGlueConnectionName(value); return *this;} /** *

Represents options that specify how and where DataBrew writes the database * output generated by recipe jobs.

*/ inline const DatabaseTableOutputOptions& GetDatabaseOptions() const{ return m_databaseOptions; } /** *

Represents options that specify how and where DataBrew writes the database * output generated by recipe jobs.

*/ inline bool DatabaseOptionsHasBeenSet() const { return m_databaseOptionsHasBeenSet; } /** *

Represents options that specify how and where DataBrew writes the database * output generated by recipe jobs.

*/ inline void SetDatabaseOptions(const DatabaseTableOutputOptions& value) { m_databaseOptionsHasBeenSet = true; m_databaseOptions = value; } /** *

Represents options that specify how and where DataBrew writes the database * output generated by recipe jobs.

*/ inline void SetDatabaseOptions(DatabaseTableOutputOptions&& value) { m_databaseOptionsHasBeenSet = true; m_databaseOptions = std::move(value); } /** *

Represents options that specify how and where DataBrew writes the database * output generated by recipe jobs.

*/ inline DatabaseOutput& WithDatabaseOptions(const DatabaseTableOutputOptions& value) { SetDatabaseOptions(value); return *this;} /** *

Represents options that specify how and where DataBrew writes the database * output generated by recipe jobs.

*/ inline DatabaseOutput& WithDatabaseOptions(DatabaseTableOutputOptions&& value) { SetDatabaseOptions(std::move(value)); return *this;} /** *

The output mode to write into the database. Currently supported option: * NEW_TABLE.

*/ inline const DatabaseOutputMode& GetDatabaseOutputMode() const{ return m_databaseOutputMode; } /** *

The output mode to write into the database. Currently supported option: * NEW_TABLE.

*/ inline bool DatabaseOutputModeHasBeenSet() const { return m_databaseOutputModeHasBeenSet; } /** *

The output mode to write into the database. Currently supported option: * NEW_TABLE.

*/ inline void SetDatabaseOutputMode(const DatabaseOutputMode& value) { m_databaseOutputModeHasBeenSet = true; m_databaseOutputMode = value; } /** *

The output mode to write into the database. Currently supported option: * NEW_TABLE.

*/ inline void SetDatabaseOutputMode(DatabaseOutputMode&& value) { m_databaseOutputModeHasBeenSet = true; m_databaseOutputMode = std::move(value); } /** *

The output mode to write into the database. Currently supported option: * NEW_TABLE.

*/ inline DatabaseOutput& WithDatabaseOutputMode(const DatabaseOutputMode& value) { SetDatabaseOutputMode(value); return *this;} /** *

The output mode to write into the database. Currently supported option: * NEW_TABLE.

*/ inline DatabaseOutput& WithDatabaseOutputMode(DatabaseOutputMode&& value) { SetDatabaseOutputMode(std::move(value)); return *this;} private: Aws::String m_glueConnectionName; bool m_glueConnectionNameHasBeenSet = false; DatabaseTableOutputOptions m_databaseOptions; bool m_databaseOptionsHasBeenSet = false; DatabaseOutputMode m_databaseOutputMode; bool m_databaseOutputModeHasBeenSet = false; }; } // namespace Model } // namespace GlueDataBrew } // namespace Aws