/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Specifies an Apache Hudi data source.See Also:
AWS API
* Reference
An array of Amazon S3 location strings for Hudi, each indicating the root * folder with which the metadata files for a Hudi table resides. The Hudi folder * may be located in a child folder of the root folder.
The crawler will * scan all folders underneath a path for a Hudi folder.
*/ inline const Aws::VectorAn array of Amazon S3 location strings for Hudi, each indicating the root * folder with which the metadata files for a Hudi table resides. The Hudi folder * may be located in a child folder of the root folder.
The crawler will * scan all folders underneath a path for a Hudi folder.
*/ inline bool PathsHasBeenSet() const { return m_pathsHasBeenSet; } /** *An array of Amazon S3 location strings for Hudi, each indicating the root * folder with which the metadata files for a Hudi table resides. The Hudi folder * may be located in a child folder of the root folder.
The crawler will * scan all folders underneath a path for a Hudi folder.
*/ inline void SetPaths(const Aws::VectorAn array of Amazon S3 location strings for Hudi, each indicating the root * folder with which the metadata files for a Hudi table resides. The Hudi folder * may be located in a child folder of the root folder.
The crawler will * scan all folders underneath a path for a Hudi folder.
*/ inline void SetPaths(Aws::VectorAn array of Amazon S3 location strings for Hudi, each indicating the root * folder with which the metadata files for a Hudi table resides. The Hudi folder * may be located in a child folder of the root folder.
The crawler will * scan all folders underneath a path for a Hudi folder.
*/ inline HudiTarget& WithPaths(const Aws::VectorAn array of Amazon S3 location strings for Hudi, each indicating the root * folder with which the metadata files for a Hudi table resides. The Hudi folder * may be located in a child folder of the root folder.
The crawler will * scan all folders underneath a path for a Hudi folder.
*/ inline HudiTarget& WithPaths(Aws::VectorAn array of Amazon S3 location strings for Hudi, each indicating the root * folder with which the metadata files for a Hudi table resides. The Hudi folder * may be located in a child folder of the root folder.
The crawler will * scan all folders underneath a path for a Hudi folder.
*/ inline HudiTarget& AddPaths(const Aws::String& value) { m_pathsHasBeenSet = true; m_paths.push_back(value); return *this; } /** *An array of Amazon S3 location strings for Hudi, each indicating the root * folder with which the metadata files for a Hudi table resides. The Hudi folder * may be located in a child folder of the root folder.
The crawler will * scan all folders underneath a path for a Hudi folder.
*/ inline HudiTarget& AddPaths(Aws::String&& value) { m_pathsHasBeenSet = true; m_paths.push_back(std::move(value)); return *this; } /** *An array of Amazon S3 location strings for Hudi, each indicating the root * folder with which the metadata files for a Hudi table resides. The Hudi folder * may be located in a child folder of the root folder.
The crawler will * scan all folders underneath a path for a Hudi folder.
*/ inline HudiTarget& AddPaths(const char* value) { m_pathsHasBeenSet = true; m_paths.push_back(value); return *this; } /** *The name of the connection to use to connect to the Hudi target. If your Hudi * files are stored in buckets that require VPC authorization, you can set their * connection properties here.
*/ inline const Aws::String& GetConnectionName() const{ return m_connectionName; } /** *The name of the connection to use to connect to the Hudi target. If your Hudi * files are stored in buckets that require VPC authorization, you can set their * connection properties here.
*/ inline bool ConnectionNameHasBeenSet() const { return m_connectionNameHasBeenSet; } /** *The name of the connection to use to connect to the Hudi target. If your Hudi * files are stored in buckets that require VPC authorization, you can set their * connection properties here.
*/ inline void SetConnectionName(const Aws::String& value) { m_connectionNameHasBeenSet = true; m_connectionName = value; } /** *The name of the connection to use to connect to the Hudi target. If your Hudi * files are stored in buckets that require VPC authorization, you can set their * connection properties here.
*/ 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 Hudi target. If your Hudi * files are stored in buckets that require VPC authorization, you can set their * connection properties here.
*/ inline void SetConnectionName(const char* value) { m_connectionNameHasBeenSet = true; m_connectionName.assign(value); } /** *The name of the connection to use to connect to the Hudi target. If your Hudi * files are stored in buckets that require VPC authorization, you can set their * connection properties here.
*/ inline HudiTarget& WithConnectionName(const Aws::String& value) { SetConnectionName(value); return *this;} /** *The name of the connection to use to connect to the Hudi target. If your Hudi * files are stored in buckets that require VPC authorization, you can set their * connection properties here.
*/ inline HudiTarget& WithConnectionName(Aws::String&& value) { SetConnectionName(std::move(value)); return *this;} /** *The name of the connection to use to connect to the Hudi target. If your Hudi * files are stored in buckets that require VPC authorization, you can set their * connection properties here.
*/ inline HudiTarget& WithConnectionName(const char* value) { SetConnectionName(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::VectorA 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::VectorA list of glob patterns used to exclude from the crawl. For more information, * see Catalog * Tables with a Crawler.
*/ inline void SetExclusions(Aws::VectorA list of glob patterns used to exclude from the crawl. For more information, * see Catalog * Tables with a Crawler.
*/ inline HudiTarget& WithExclusions(const Aws::VectorA list of glob patterns used to exclude from the crawl. For more information, * see Catalog * Tables with a Crawler.
*/ inline HudiTarget& WithExclusions(Aws::VectorA list of glob patterns used to exclude from the crawl. For more information, * see Catalog * Tables with a Crawler.
*/ inline HudiTarget& 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 HudiTarget& 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 HudiTarget& AddExclusions(const char* value) { m_exclusionsHasBeenSet = true; m_exclusions.push_back(value); return *this; } /** *The maximum depth of Amazon S3 paths that the crawler can traverse to * discover the Hudi metadata folder in your Amazon S3 path. Used to limit the * crawler run time.
*/ inline int GetMaximumTraversalDepth() const{ return m_maximumTraversalDepth; } /** *The maximum depth of Amazon S3 paths that the crawler can traverse to * discover the Hudi metadata folder in your Amazon S3 path. Used to limit the * crawler run time.
*/ inline bool MaximumTraversalDepthHasBeenSet() const { return m_maximumTraversalDepthHasBeenSet; } /** *The maximum depth of Amazon S3 paths that the crawler can traverse to * discover the Hudi metadata folder in your Amazon S3 path. Used to limit the * crawler run time.
*/ inline void SetMaximumTraversalDepth(int value) { m_maximumTraversalDepthHasBeenSet = true; m_maximumTraversalDepth = value; } /** *The maximum depth of Amazon S3 paths that the crawler can traverse to * discover the Hudi metadata folder in your Amazon S3 path. Used to limit the * crawler run time.
*/ inline HudiTarget& WithMaximumTraversalDepth(int value) { SetMaximumTraversalDepth(value); return *this;} private: Aws::Vector