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

When crawling an Amazon S3 data source after the first crawl is complete, * specifies whether to crawl the entire dataset again or to crawl only folders * that were added since the last crawler run. For more information, see Incremental * Crawls in Glue in the developer guide.

See Also:

AWS * API Reference

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

Specifies whether to crawl the entire dataset again or to crawl only folders * that were added since the last crawler run.

A value of * CRAWL_EVERYTHING specifies crawling the entire dataset again.

*

A value of CRAWL_NEW_FOLDERS_ONLY specifies crawling only * folders that were added since the last crawler run.

A value of * CRAWL_EVENT_MODE specifies crawling only the changes identified by * Amazon S3 events.

*/ inline const RecrawlBehavior& GetRecrawlBehavior() const{ return m_recrawlBehavior; } /** *

Specifies whether to crawl the entire dataset again or to crawl only folders * that were added since the last crawler run.

A value of * CRAWL_EVERYTHING specifies crawling the entire dataset again.

*

A value of CRAWL_NEW_FOLDERS_ONLY specifies crawling only * folders that were added since the last crawler run.

A value of * CRAWL_EVENT_MODE specifies crawling only the changes identified by * Amazon S3 events.

*/ inline bool RecrawlBehaviorHasBeenSet() const { return m_recrawlBehaviorHasBeenSet; } /** *

Specifies whether to crawl the entire dataset again or to crawl only folders * that were added since the last crawler run.

A value of * CRAWL_EVERYTHING specifies crawling the entire dataset again.

*

A value of CRAWL_NEW_FOLDERS_ONLY specifies crawling only * folders that were added since the last crawler run.

A value of * CRAWL_EVENT_MODE specifies crawling only the changes identified by * Amazon S3 events.

*/ inline void SetRecrawlBehavior(const RecrawlBehavior& value) { m_recrawlBehaviorHasBeenSet = true; m_recrawlBehavior = value; } /** *

Specifies whether to crawl the entire dataset again or to crawl only folders * that were added since the last crawler run.

A value of * CRAWL_EVERYTHING specifies crawling the entire dataset again.

*

A value of CRAWL_NEW_FOLDERS_ONLY specifies crawling only * folders that were added since the last crawler run.

A value of * CRAWL_EVENT_MODE specifies crawling only the changes identified by * Amazon S3 events.

*/ inline void SetRecrawlBehavior(RecrawlBehavior&& value) { m_recrawlBehaviorHasBeenSet = true; m_recrawlBehavior = std::move(value); } /** *

Specifies whether to crawl the entire dataset again or to crawl only folders * that were added since the last crawler run.

A value of * CRAWL_EVERYTHING specifies crawling the entire dataset again.

*

A value of CRAWL_NEW_FOLDERS_ONLY specifies crawling only * folders that were added since the last crawler run.

A value of * CRAWL_EVENT_MODE specifies crawling only the changes identified by * Amazon S3 events.

*/ inline RecrawlPolicy& WithRecrawlBehavior(const RecrawlBehavior& value) { SetRecrawlBehavior(value); return *this;} /** *

Specifies whether to crawl the entire dataset again or to crawl only folders * that were added since the last crawler run.

A value of * CRAWL_EVERYTHING specifies crawling the entire dataset again.

*

A value of CRAWL_NEW_FOLDERS_ONLY specifies crawling only * folders that were added since the last crawler run.

A value of * CRAWL_EVENT_MODE specifies crawling only the changes identified by * Amazon S3 events.

*/ inline RecrawlPolicy& WithRecrawlBehavior(RecrawlBehavior&& value) { SetRecrawlBehavior(std::move(value)); return *this;} private: RecrawlBehavior m_recrawlBehavior; bool m_recrawlBehaviorHasBeenSet = false; }; } // namespace Model } // namespace Glue } // namespace Aws