/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Represents a set of options that define how DataBrew selects files for a
* given Amazon S3 path in a dataset.See Also:
AWS
* API Reference
If provided, this structure defines a date range for matching Amazon S3 * objects based on their LastModifiedDate attribute in Amazon S3.
*/ inline const FilterExpression& GetLastModifiedDateCondition() const{ return m_lastModifiedDateCondition; } /** *If provided, this structure defines a date range for matching Amazon S3 * objects based on their LastModifiedDate attribute in Amazon S3.
*/ inline bool LastModifiedDateConditionHasBeenSet() const { return m_lastModifiedDateConditionHasBeenSet; } /** *If provided, this structure defines a date range for matching Amazon S3 * objects based on their LastModifiedDate attribute in Amazon S3.
*/ inline void SetLastModifiedDateCondition(const FilterExpression& value) { m_lastModifiedDateConditionHasBeenSet = true; m_lastModifiedDateCondition = value; } /** *If provided, this structure defines a date range for matching Amazon S3 * objects based on their LastModifiedDate attribute in Amazon S3.
*/ inline void SetLastModifiedDateCondition(FilterExpression&& value) { m_lastModifiedDateConditionHasBeenSet = true; m_lastModifiedDateCondition = std::move(value); } /** *If provided, this structure defines a date range for matching Amazon S3 * objects based on their LastModifiedDate attribute in Amazon S3.
*/ inline PathOptions& WithLastModifiedDateCondition(const FilterExpression& value) { SetLastModifiedDateCondition(value); return *this;} /** *If provided, this structure defines a date range for matching Amazon S3 * objects based on their LastModifiedDate attribute in Amazon S3.
*/ inline PathOptions& WithLastModifiedDateCondition(FilterExpression&& value) { SetLastModifiedDateCondition(std::move(value)); return *this;} /** *If provided, this structure imposes a limit on a number of files that should * be selected.
*/ inline const FilesLimit& GetFilesLimit() const{ return m_filesLimit; } /** *If provided, this structure imposes a limit on a number of files that should * be selected.
*/ inline bool FilesLimitHasBeenSet() const { return m_filesLimitHasBeenSet; } /** *If provided, this structure imposes a limit on a number of files that should * be selected.
*/ inline void SetFilesLimit(const FilesLimit& value) { m_filesLimitHasBeenSet = true; m_filesLimit = value; } /** *If provided, this structure imposes a limit on a number of files that should * be selected.
*/ inline void SetFilesLimit(FilesLimit&& value) { m_filesLimitHasBeenSet = true; m_filesLimit = std::move(value); } /** *If provided, this structure imposes a limit on a number of files that should * be selected.
*/ inline PathOptions& WithFilesLimit(const FilesLimit& value) { SetFilesLimit(value); return *this;} /** *If provided, this structure imposes a limit on a number of files that should * be selected.
*/ inline PathOptions& WithFilesLimit(FilesLimit&& value) { SetFilesLimit(std::move(value)); return *this;} /** *A structure that maps names of parameters used in the Amazon S3 path of a * dataset to their definitions.
*/ inline const Aws::MapA structure that maps names of parameters used in the Amazon S3 path of a * dataset to their definitions.
*/ inline bool ParametersHasBeenSet() const { return m_parametersHasBeenSet; } /** *A structure that maps names of parameters used in the Amazon S3 path of a * dataset to their definitions.
*/ inline void SetParameters(const Aws::MapA structure that maps names of parameters used in the Amazon S3 path of a * dataset to their definitions.
*/ inline void SetParameters(Aws::MapA structure that maps names of parameters used in the Amazon S3 path of a * dataset to their definitions.
*/ inline PathOptions& WithParameters(const Aws::MapA structure that maps names of parameters used in the Amazon S3 path of a * dataset to their definitions.
*/ inline PathOptions& WithParameters(Aws::MapA structure that maps names of parameters used in the Amazon S3 path of a * dataset to their definitions.
*/ inline PathOptions& AddParameters(const Aws::String& key, const DatasetParameter& value) { m_parametersHasBeenSet = true; m_parameters.emplace(key, value); return *this; } /** *A structure that maps names of parameters used in the Amazon S3 path of a * dataset to their definitions.
*/ inline PathOptions& AddParameters(Aws::String&& key, const DatasetParameter& value) { m_parametersHasBeenSet = true; m_parameters.emplace(std::move(key), value); return *this; } /** *A structure that maps names of parameters used in the Amazon S3 path of a * dataset to their definitions.
*/ inline PathOptions& AddParameters(const Aws::String& key, DatasetParameter&& value) { m_parametersHasBeenSet = true; m_parameters.emplace(key, std::move(value)); return *this; } /** *A structure that maps names of parameters used in the Amazon S3 path of a * dataset to their definitions.
*/ inline PathOptions& AddParameters(Aws::String&& key, DatasetParameter&& value) { m_parametersHasBeenSet = true; m_parameters.emplace(std::move(key), std::move(value)); return *this; } /** *A structure that maps names of parameters used in the Amazon S3 path of a * dataset to their definitions.
*/ inline PathOptions& AddParameters(const char* key, DatasetParameter&& value) { m_parametersHasBeenSet = true; m_parameters.emplace(key, std::move(value)); return *this; } /** *A structure that maps names of parameters used in the Amazon S3 path of a * dataset to their definitions.
*/ inline PathOptions& AddParameters(const char* key, const DatasetParameter& value) { m_parametersHasBeenSet = true; m_parameters.emplace(key, value); return *this; } private: FilterExpression m_lastModifiedDateCondition; bool m_lastModifiedDateConditionHasBeenSet = false; FilesLimit m_filesLimit; bool m_filesLimitHasBeenSet = false; Aws::Map