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

Provides the configuration information for applying basic logic to alter * document metadata and content when ingesting documents into Amazon Kendra. To * apply advanced logic, to go beyond what you can do with basic logic, see HookConfiguration.

*

For more information, see Customizing * document metadata during the ingestion process.

See Also:

* AWS * API Reference

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

Configuration of the condition used for the target document attribute or * metadata field when ingesting documents into Amazon Kendra.

*/ inline const DocumentAttributeCondition& GetCondition() const{ return m_condition; } /** *

Configuration of the condition used for the target document attribute or * metadata field when ingesting documents into Amazon Kendra.

*/ inline bool ConditionHasBeenSet() const { return m_conditionHasBeenSet; } /** *

Configuration of the condition used for the target document attribute or * metadata field when ingesting documents into Amazon Kendra.

*/ inline void SetCondition(const DocumentAttributeCondition& value) { m_conditionHasBeenSet = true; m_condition = value; } /** *

Configuration of the condition used for the target document attribute or * metadata field when ingesting documents into Amazon Kendra.

*/ inline void SetCondition(DocumentAttributeCondition&& value) { m_conditionHasBeenSet = true; m_condition = std::move(value); } /** *

Configuration of the condition used for the target document attribute or * metadata field when ingesting documents into Amazon Kendra.

*/ inline InlineCustomDocumentEnrichmentConfiguration& WithCondition(const DocumentAttributeCondition& value) { SetCondition(value); return *this;} /** *

Configuration of the condition used for the target document attribute or * metadata field when ingesting documents into Amazon Kendra.

*/ inline InlineCustomDocumentEnrichmentConfiguration& WithCondition(DocumentAttributeCondition&& value) { SetCondition(std::move(value)); return *this;} /** *

Configuration of the target document attribute or metadata field when * ingesting documents into Amazon Kendra. You can also include a value.

*/ inline const DocumentAttributeTarget& GetTarget() const{ return m_target; } /** *

Configuration of the target document attribute or metadata field when * ingesting documents into Amazon Kendra. You can also include a value.

*/ inline bool TargetHasBeenSet() const { return m_targetHasBeenSet; } /** *

Configuration of the target document attribute or metadata field when * ingesting documents into Amazon Kendra. You can also include a value.

*/ inline void SetTarget(const DocumentAttributeTarget& value) { m_targetHasBeenSet = true; m_target = value; } /** *

Configuration of the target document attribute or metadata field when * ingesting documents into Amazon Kendra. You can also include a value.

*/ inline void SetTarget(DocumentAttributeTarget&& value) { m_targetHasBeenSet = true; m_target = std::move(value); } /** *

Configuration of the target document attribute or metadata field when * ingesting documents into Amazon Kendra. You can also include a value.

*/ inline InlineCustomDocumentEnrichmentConfiguration& WithTarget(const DocumentAttributeTarget& value) { SetTarget(value); return *this;} /** *

Configuration of the target document attribute or metadata field when * ingesting documents into Amazon Kendra. You can also include a value.

*/ inline InlineCustomDocumentEnrichmentConfiguration& WithTarget(DocumentAttributeTarget&& value) { SetTarget(std::move(value)); return *this;} /** *

TRUE to delete content if the condition used for the target * attribute is met.

*/ inline bool GetDocumentContentDeletion() const{ return m_documentContentDeletion; } /** *

TRUE to delete content if the condition used for the target * attribute is met.

*/ inline bool DocumentContentDeletionHasBeenSet() const { return m_documentContentDeletionHasBeenSet; } /** *

TRUE to delete content if the condition used for the target * attribute is met.

*/ inline void SetDocumentContentDeletion(bool value) { m_documentContentDeletionHasBeenSet = true; m_documentContentDeletion = value; } /** *

TRUE to delete content if the condition used for the target * attribute is met.

*/ inline InlineCustomDocumentEnrichmentConfiguration& WithDocumentContentDeletion(bool value) { SetDocumentContentDeletion(value); return *this;} private: DocumentAttributeCondition m_condition; bool m_conditionHasBeenSet = false; DocumentAttributeTarget m_target; bool m_targetHasBeenSet = false; bool m_documentContentDeletion; bool m_documentContentDeletionHasBeenSet = false; }; } // namespace Model } // namespace kendra } // namespace Aws