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

Specifies data stores to crawl.

See Also:

AWS * API Reference

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

Specifies Amazon Simple Storage Service (Amazon S3) targets.

*/ inline const Aws::Vector& GetS3Targets() const{ return m_s3Targets; } /** *

Specifies Amazon Simple Storage Service (Amazon S3) targets.

*/ inline bool S3TargetsHasBeenSet() const { return m_s3TargetsHasBeenSet; } /** *

Specifies Amazon Simple Storage Service (Amazon S3) targets.

*/ inline void SetS3Targets(const Aws::Vector& value) { m_s3TargetsHasBeenSet = true; m_s3Targets = value; } /** *

Specifies Amazon Simple Storage Service (Amazon S3) targets.

*/ inline void SetS3Targets(Aws::Vector&& value) { m_s3TargetsHasBeenSet = true; m_s3Targets = std::move(value); } /** *

Specifies Amazon Simple Storage Service (Amazon S3) targets.

*/ inline CrawlerTargets& WithS3Targets(const Aws::Vector& value) { SetS3Targets(value); return *this;} /** *

Specifies Amazon Simple Storage Service (Amazon S3) targets.

*/ inline CrawlerTargets& WithS3Targets(Aws::Vector&& value) { SetS3Targets(std::move(value)); return *this;} /** *

Specifies Amazon Simple Storage Service (Amazon S3) targets.

*/ inline CrawlerTargets& AddS3Targets(const S3Target& value) { m_s3TargetsHasBeenSet = true; m_s3Targets.push_back(value); return *this; } /** *

Specifies Amazon Simple Storage Service (Amazon S3) targets.

*/ inline CrawlerTargets& AddS3Targets(S3Target&& value) { m_s3TargetsHasBeenSet = true; m_s3Targets.push_back(std::move(value)); return *this; } /** *

Specifies JDBC targets.

*/ inline const Aws::Vector& GetJdbcTargets() const{ return m_jdbcTargets; } /** *

Specifies JDBC targets.

*/ inline bool JdbcTargetsHasBeenSet() const { return m_jdbcTargetsHasBeenSet; } /** *

Specifies JDBC targets.

*/ inline void SetJdbcTargets(const Aws::Vector& value) { m_jdbcTargetsHasBeenSet = true; m_jdbcTargets = value; } /** *

Specifies JDBC targets.

*/ inline void SetJdbcTargets(Aws::Vector&& value) { m_jdbcTargetsHasBeenSet = true; m_jdbcTargets = std::move(value); } /** *

Specifies JDBC targets.

*/ inline CrawlerTargets& WithJdbcTargets(const Aws::Vector& value) { SetJdbcTargets(value); return *this;} /** *

Specifies JDBC targets.

*/ inline CrawlerTargets& WithJdbcTargets(Aws::Vector&& value) { SetJdbcTargets(std::move(value)); return *this;} /** *

Specifies JDBC targets.

*/ inline CrawlerTargets& AddJdbcTargets(const JdbcTarget& value) { m_jdbcTargetsHasBeenSet = true; m_jdbcTargets.push_back(value); return *this; } /** *

Specifies JDBC targets.

*/ inline CrawlerTargets& AddJdbcTargets(JdbcTarget&& value) { m_jdbcTargetsHasBeenSet = true; m_jdbcTargets.push_back(std::move(value)); return *this; } /** *

Specifies Amazon DynamoDB targets.

*/ inline const Aws::Vector& GetDynamoDBTargets() const{ return m_dynamoDBTargets; } /** *

Specifies Amazon DynamoDB targets.

*/ inline bool DynamoDBTargetsHasBeenSet() const { return m_dynamoDBTargetsHasBeenSet; } /** *

Specifies Amazon DynamoDB targets.

*/ inline void SetDynamoDBTargets(const Aws::Vector& value) { m_dynamoDBTargetsHasBeenSet = true; m_dynamoDBTargets = value; } /** *

Specifies Amazon DynamoDB targets.

*/ inline void SetDynamoDBTargets(Aws::Vector&& value) { m_dynamoDBTargetsHasBeenSet = true; m_dynamoDBTargets = std::move(value); } /** *

Specifies Amazon DynamoDB targets.

*/ inline CrawlerTargets& WithDynamoDBTargets(const Aws::Vector& value) { SetDynamoDBTargets(value); return *this;} /** *

Specifies Amazon DynamoDB targets.

*/ inline CrawlerTargets& WithDynamoDBTargets(Aws::Vector&& value) { SetDynamoDBTargets(std::move(value)); return *this;} /** *

Specifies Amazon DynamoDB targets.

*/ inline CrawlerTargets& AddDynamoDBTargets(const DynamoDBTarget& value) { m_dynamoDBTargetsHasBeenSet = true; m_dynamoDBTargets.push_back(value); return *this; } /** *

Specifies Amazon DynamoDB targets.

*/ inline CrawlerTargets& AddDynamoDBTargets(DynamoDBTarget&& value) { m_dynamoDBTargetsHasBeenSet = true; m_dynamoDBTargets.push_back(std::move(value)); return *this; } /** *

Specifies AWS Glue Data Catalog targets.

*/ inline const Aws::Vector& GetCatalogTargets() const{ return m_catalogTargets; } /** *

Specifies AWS Glue Data Catalog targets.

*/ inline bool CatalogTargetsHasBeenSet() const { return m_catalogTargetsHasBeenSet; } /** *

Specifies AWS Glue Data Catalog targets.

*/ inline void SetCatalogTargets(const Aws::Vector& value) { m_catalogTargetsHasBeenSet = true; m_catalogTargets = value; } /** *

Specifies AWS Glue Data Catalog targets.

*/ inline void SetCatalogTargets(Aws::Vector&& value) { m_catalogTargetsHasBeenSet = true; m_catalogTargets = std::move(value); } /** *

Specifies AWS Glue Data Catalog targets.

*/ inline CrawlerTargets& WithCatalogTargets(const Aws::Vector& value) { SetCatalogTargets(value); return *this;} /** *

Specifies AWS Glue Data Catalog targets.

*/ inline CrawlerTargets& WithCatalogTargets(Aws::Vector&& value) { SetCatalogTargets(std::move(value)); return *this;} /** *

Specifies AWS Glue Data Catalog targets.

*/ inline CrawlerTargets& AddCatalogTargets(const CatalogTarget& value) { m_catalogTargetsHasBeenSet = true; m_catalogTargets.push_back(value); return *this; } /** *

Specifies AWS Glue Data Catalog targets.

*/ inline CrawlerTargets& AddCatalogTargets(CatalogTarget&& value) { m_catalogTargetsHasBeenSet = true; m_catalogTargets.push_back(std::move(value)); return *this; } private: Aws::Vector m_s3Targets; bool m_s3TargetsHasBeenSet; Aws::Vector m_jdbcTargets; bool m_jdbcTargetsHasBeenSet; Aws::Vector m_dynamoDBTargets; bool m_dynamoDBTargetsHasBeenSet; Aws::Vector m_catalogTargets; bool m_catalogTargetsHasBeenSet; }; } // namespace Model } // namespace Glue } // namespace Aws