/** * 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 Glue { namespace Model { /** *

Specifies a JDBC data store to crawl.

See Also:

AWS API * Reference

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

The name of the connection to use to connect to the JDBC target.

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

The name of the connection to use to connect to the JDBC target.

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

The name of the connection to use to connect to the JDBC target.

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

The name of the connection to use to connect to the JDBC target.

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

The name of the connection to use to connect to the JDBC target.

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

The name of the connection to use to connect to the JDBC target.

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

The name of the connection to use to connect to the JDBC target.

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

The name of the connection to use to connect to the JDBC target.

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

The path of the JDBC target.

*/ inline const Aws::String& GetPath() const{ return m_path; } /** *

The path of the JDBC target.

*/ inline bool PathHasBeenSet() const { return m_pathHasBeenSet; } /** *

The path of the JDBC target.

*/ inline void SetPath(const Aws::String& value) { m_pathHasBeenSet = true; m_path = value; } /** *

The path of the JDBC target.

*/ inline void SetPath(Aws::String&& value) { m_pathHasBeenSet = true; m_path = std::move(value); } /** *

The path of the JDBC target.

*/ inline void SetPath(const char* value) { m_pathHasBeenSet = true; m_path.assign(value); } /** *

The path of the JDBC target.

*/ inline JdbcTarget& WithPath(const Aws::String& value) { SetPath(value); return *this;} /** *

The path of the JDBC target.

*/ inline JdbcTarget& WithPath(Aws::String&& value) { SetPath(std::move(value)); return *this;} /** *

The path of the JDBC target.

*/ inline JdbcTarget& WithPath(const char* value) { SetPath(value); return *this;} /** *

A list of glob patterns used to exclude from the crawl. For more information, * see Catalog * Tables with a Crawler.

*/ inline const Aws::Vector& GetExclusions() const{ return m_exclusions; } /** *

A list of glob patterns used to exclude from the crawl. For more information, * see Catalog * Tables with a Crawler.

*/ inline bool ExclusionsHasBeenSet() const { return m_exclusionsHasBeenSet; } /** *

A list of glob patterns used to exclude from the crawl. For more information, * see Catalog * Tables with a Crawler.

*/ inline void SetExclusions(const Aws::Vector& value) { m_exclusionsHasBeenSet = true; m_exclusions = value; } /** *

A list of glob patterns used to exclude from the crawl. For more information, * see Catalog * Tables with a Crawler.

*/ inline void SetExclusions(Aws::Vector&& value) { m_exclusionsHasBeenSet = true; m_exclusions = std::move(value); } /** *

A list of glob patterns used to exclude from the crawl. For more information, * see Catalog * Tables with a Crawler.

*/ inline JdbcTarget& WithExclusions(const Aws::Vector& value) { SetExclusions(value); return *this;} /** *

A list of glob patterns used to exclude from the crawl. For more information, * see Catalog * Tables with a Crawler.

*/ inline JdbcTarget& WithExclusions(Aws::Vector&& value) { SetExclusions(std::move(value)); return *this;} /** *

A list of glob patterns used to exclude from the crawl. For more information, * see Catalog * Tables with a Crawler.

*/ inline JdbcTarget& AddExclusions(const Aws::String& value) { m_exclusionsHasBeenSet = true; m_exclusions.push_back(value); return *this; } /** *

A list of glob patterns used to exclude from the crawl. For more information, * see Catalog * Tables with a Crawler.

*/ inline JdbcTarget& AddExclusions(Aws::String&& value) { m_exclusionsHasBeenSet = true; m_exclusions.push_back(std::move(value)); return *this; } /** *

A list of glob patterns used to exclude from the crawl. For more information, * see Catalog * Tables with a Crawler.

*/ inline JdbcTarget& AddExclusions(const char* value) { m_exclusionsHasBeenSet = true; m_exclusions.push_back(value); return *this; } /** *

Specify a value of RAWTYPES or COMMENTS to enable * additional metadata in table responses. RAWTYPES provides the * native-level datatype. COMMENTS provides comments associated with a * column or table in the database.

If you do not need additional metadata, * keep the field empty.

*/ inline const Aws::Vector& GetEnableAdditionalMetadata() const{ return m_enableAdditionalMetadata; } /** *

Specify a value of RAWTYPES or COMMENTS to enable * additional metadata in table responses. RAWTYPES provides the * native-level datatype. COMMENTS provides comments associated with a * column or table in the database.

If you do not need additional metadata, * keep the field empty.

*/ inline bool EnableAdditionalMetadataHasBeenSet() const { return m_enableAdditionalMetadataHasBeenSet; } /** *

Specify a value of RAWTYPES or COMMENTS to enable * additional metadata in table responses. RAWTYPES provides the * native-level datatype. COMMENTS provides comments associated with a * column or table in the database.

If you do not need additional metadata, * keep the field empty.

*/ inline void SetEnableAdditionalMetadata(const Aws::Vector& value) { m_enableAdditionalMetadataHasBeenSet = true; m_enableAdditionalMetadata = value; } /** *

Specify a value of RAWTYPES or COMMENTS to enable * additional metadata in table responses. RAWTYPES provides the * native-level datatype. COMMENTS provides comments associated with a * column or table in the database.

If you do not need additional metadata, * keep the field empty.

*/ inline void SetEnableAdditionalMetadata(Aws::Vector&& value) { m_enableAdditionalMetadataHasBeenSet = true; m_enableAdditionalMetadata = std::move(value); } /** *

Specify a value of RAWTYPES or COMMENTS to enable * additional metadata in table responses. RAWTYPES provides the * native-level datatype. COMMENTS provides comments associated with a * column or table in the database.

If you do not need additional metadata, * keep the field empty.

*/ inline JdbcTarget& WithEnableAdditionalMetadata(const Aws::Vector& value) { SetEnableAdditionalMetadata(value); return *this;} /** *

Specify a value of RAWTYPES or COMMENTS to enable * additional metadata in table responses. RAWTYPES provides the * native-level datatype. COMMENTS provides comments associated with a * column or table in the database.

If you do not need additional metadata, * keep the field empty.

*/ inline JdbcTarget& WithEnableAdditionalMetadata(Aws::Vector&& value) { SetEnableAdditionalMetadata(std::move(value)); return *this;} /** *

Specify a value of RAWTYPES or COMMENTS to enable * additional metadata in table responses. RAWTYPES provides the * native-level datatype. COMMENTS provides comments associated with a * column or table in the database.

If you do not need additional metadata, * keep the field empty.

*/ inline JdbcTarget& AddEnableAdditionalMetadata(const JdbcMetadataEntry& value) { m_enableAdditionalMetadataHasBeenSet = true; m_enableAdditionalMetadata.push_back(value); return *this; } /** *

Specify a value of RAWTYPES or COMMENTS to enable * additional metadata in table responses. RAWTYPES provides the * native-level datatype. COMMENTS provides comments associated with a * column or table in the database.

If you do not need additional metadata, * keep the field empty.

*/ inline JdbcTarget& AddEnableAdditionalMetadata(JdbcMetadataEntry&& value) { m_enableAdditionalMetadataHasBeenSet = true; m_enableAdditionalMetadata.push_back(std::move(value)); return *this; } private: Aws::String m_connectionName; bool m_connectionNameHasBeenSet = false; Aws::String m_path; bool m_pathHasBeenSet = false; Aws::Vector m_exclusions; bool m_exclusionsHasBeenSet = false; Aws::Vector m_enableAdditionalMetadata; bool m_enableAdditionalMetadataHasBeenSet = false; }; } // namespace Model } // namespace Glue } // namespace Aws