/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #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 the knowledge article types that * Amazon Kendra indexes. Amazon Kendra indexes standard knowledge articles and the * standard fields of knowledge articles, or the custom fields of custom knowledge * articles, but not both

See Also:

AWS * API Reference

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

Specifies the document states that should be included when Amazon Kendra * indexes knowledge articles. You must specify at least one state.

*/ inline const Aws::Vector& GetIncludedStates() const{ return m_includedStates; } /** *

Specifies the document states that should be included when Amazon Kendra * indexes knowledge articles. You must specify at least one state.

*/ inline bool IncludedStatesHasBeenSet() const { return m_includedStatesHasBeenSet; } /** *

Specifies the document states that should be included when Amazon Kendra * indexes knowledge articles. You must specify at least one state.

*/ inline void SetIncludedStates(const Aws::Vector& value) { m_includedStatesHasBeenSet = true; m_includedStates = value; } /** *

Specifies the document states that should be included when Amazon Kendra * indexes knowledge articles. You must specify at least one state.

*/ inline void SetIncludedStates(Aws::Vector&& value) { m_includedStatesHasBeenSet = true; m_includedStates = std::move(value); } /** *

Specifies the document states that should be included when Amazon Kendra * indexes knowledge articles. You must specify at least one state.

*/ inline SalesforceKnowledgeArticleConfiguration& WithIncludedStates(const Aws::Vector& value) { SetIncludedStates(value); return *this;} /** *

Specifies the document states that should be included when Amazon Kendra * indexes knowledge articles. You must specify at least one state.

*/ inline SalesforceKnowledgeArticleConfiguration& WithIncludedStates(Aws::Vector&& value) { SetIncludedStates(std::move(value)); return *this;} /** *

Specifies the document states that should be included when Amazon Kendra * indexes knowledge articles. You must specify at least one state.

*/ inline SalesforceKnowledgeArticleConfiguration& AddIncludedStates(const SalesforceKnowledgeArticleState& value) { m_includedStatesHasBeenSet = true; m_includedStates.push_back(value); return *this; } /** *

Specifies the document states that should be included when Amazon Kendra * indexes knowledge articles. You must specify at least one state.

*/ inline SalesforceKnowledgeArticleConfiguration& AddIncludedStates(SalesforceKnowledgeArticleState&& value) { m_includedStatesHasBeenSet = true; m_includedStates.push_back(std::move(value)); return *this; } /** *

Configuration information for standard Salesforce knowledge articles.

*/ inline const SalesforceStandardKnowledgeArticleTypeConfiguration& GetStandardKnowledgeArticleTypeConfiguration() const{ return m_standardKnowledgeArticleTypeConfiguration; } /** *

Configuration information for standard Salesforce knowledge articles.

*/ inline bool StandardKnowledgeArticleTypeConfigurationHasBeenSet() const { return m_standardKnowledgeArticleTypeConfigurationHasBeenSet; } /** *

Configuration information for standard Salesforce knowledge articles.

*/ inline void SetStandardKnowledgeArticleTypeConfiguration(const SalesforceStandardKnowledgeArticleTypeConfiguration& value) { m_standardKnowledgeArticleTypeConfigurationHasBeenSet = true; m_standardKnowledgeArticleTypeConfiguration = value; } /** *

Configuration information for standard Salesforce knowledge articles.

*/ inline void SetStandardKnowledgeArticleTypeConfiguration(SalesforceStandardKnowledgeArticleTypeConfiguration&& value) { m_standardKnowledgeArticleTypeConfigurationHasBeenSet = true; m_standardKnowledgeArticleTypeConfiguration = std::move(value); } /** *

Configuration information for standard Salesforce knowledge articles.

*/ inline SalesforceKnowledgeArticleConfiguration& WithStandardKnowledgeArticleTypeConfiguration(const SalesforceStandardKnowledgeArticleTypeConfiguration& value) { SetStandardKnowledgeArticleTypeConfiguration(value); return *this;} /** *

Configuration information for standard Salesforce knowledge articles.

*/ inline SalesforceKnowledgeArticleConfiguration& WithStandardKnowledgeArticleTypeConfiguration(SalesforceStandardKnowledgeArticleTypeConfiguration&& value) { SetStandardKnowledgeArticleTypeConfiguration(std::move(value)); return *this;} /** *

Configuration information for custom Salesforce knowledge articles.

*/ inline const Aws::Vector& GetCustomKnowledgeArticleTypeConfigurations() const{ return m_customKnowledgeArticleTypeConfigurations; } /** *

Configuration information for custom Salesforce knowledge articles.

*/ inline bool CustomKnowledgeArticleTypeConfigurationsHasBeenSet() const { return m_customKnowledgeArticleTypeConfigurationsHasBeenSet; } /** *

Configuration information for custom Salesforce knowledge articles.

*/ inline void SetCustomKnowledgeArticleTypeConfigurations(const Aws::Vector& value) { m_customKnowledgeArticleTypeConfigurationsHasBeenSet = true; m_customKnowledgeArticleTypeConfigurations = value; } /** *

Configuration information for custom Salesforce knowledge articles.

*/ inline void SetCustomKnowledgeArticleTypeConfigurations(Aws::Vector&& value) { m_customKnowledgeArticleTypeConfigurationsHasBeenSet = true; m_customKnowledgeArticleTypeConfigurations = std::move(value); } /** *

Configuration information for custom Salesforce knowledge articles.

*/ inline SalesforceKnowledgeArticleConfiguration& WithCustomKnowledgeArticleTypeConfigurations(const Aws::Vector& value) { SetCustomKnowledgeArticleTypeConfigurations(value); return *this;} /** *

Configuration information for custom Salesforce knowledge articles.

*/ inline SalesforceKnowledgeArticleConfiguration& WithCustomKnowledgeArticleTypeConfigurations(Aws::Vector&& value) { SetCustomKnowledgeArticleTypeConfigurations(std::move(value)); return *this;} /** *

Configuration information for custom Salesforce knowledge articles.

*/ inline SalesforceKnowledgeArticleConfiguration& AddCustomKnowledgeArticleTypeConfigurations(const SalesforceCustomKnowledgeArticleTypeConfiguration& value) { m_customKnowledgeArticleTypeConfigurationsHasBeenSet = true; m_customKnowledgeArticleTypeConfigurations.push_back(value); return *this; } /** *

Configuration information for custom Salesforce knowledge articles.

*/ inline SalesforceKnowledgeArticleConfiguration& AddCustomKnowledgeArticleTypeConfigurations(SalesforceCustomKnowledgeArticleTypeConfiguration&& value) { m_customKnowledgeArticleTypeConfigurationsHasBeenSet = true; m_customKnowledgeArticleTypeConfigurations.push_back(std::move(value)); return *this; } private: Aws::Vector m_includedStates; bool m_includedStatesHasBeenSet = false; SalesforceStandardKnowledgeArticleTypeConfiguration m_standardKnowledgeArticleTypeConfiguration; bool m_standardKnowledgeArticleTypeConfigurationHasBeenSet = false; Aws::Vector m_customKnowledgeArticleTypeConfigurations; bool m_customKnowledgeArticleTypeConfigurationsHasBeenSet = false; }; } // namespace Model } // namespace kendra } // namespace Aws