/** * 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 configuration information required to connect to a ServiceNow data * source.

See Also:

AWS * API Reference

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

The ServiceNow instance that the data source connects to. The host endpoint * should look like the following: {instance}.service-now.com.

*/ inline const Aws::String& GetHostUrl() const{ return m_hostUrl; } /** *

The ServiceNow instance that the data source connects to. The host endpoint * should look like the following: {instance}.service-now.com.

*/ inline bool HostUrlHasBeenSet() const { return m_hostUrlHasBeenSet; } /** *

The ServiceNow instance that the data source connects to. The host endpoint * should look like the following: {instance}.service-now.com.

*/ inline void SetHostUrl(const Aws::String& value) { m_hostUrlHasBeenSet = true; m_hostUrl = value; } /** *

The ServiceNow instance that the data source connects to. The host endpoint * should look like the following: {instance}.service-now.com.

*/ inline void SetHostUrl(Aws::String&& value) { m_hostUrlHasBeenSet = true; m_hostUrl = std::move(value); } /** *

The ServiceNow instance that the data source connects to. The host endpoint * should look like the following: {instance}.service-now.com.

*/ inline void SetHostUrl(const char* value) { m_hostUrlHasBeenSet = true; m_hostUrl.assign(value); } /** *

The ServiceNow instance that the data source connects to. The host endpoint * should look like the following: {instance}.service-now.com.

*/ inline ServiceNowConfiguration& WithHostUrl(const Aws::String& value) { SetHostUrl(value); return *this;} /** *

The ServiceNow instance that the data source connects to. The host endpoint * should look like the following: {instance}.service-now.com.

*/ inline ServiceNowConfiguration& WithHostUrl(Aws::String&& value) { SetHostUrl(std::move(value)); return *this;} /** *

The ServiceNow instance that the data source connects to. The host endpoint * should look like the following: {instance}.service-now.com.

*/ inline ServiceNowConfiguration& WithHostUrl(const char* value) { SetHostUrl(value); return *this;} /** *

The Amazon Resource Name (ARN) of the AWS Secret Manager secret that contains * the user name and password required to connect to the ServiceNow instance.

*/ inline const Aws::String& GetSecretArn() const{ return m_secretArn; } /** *

The Amazon Resource Name (ARN) of the AWS Secret Manager secret that contains * the user name and password required to connect to the ServiceNow instance.

*/ inline bool SecretArnHasBeenSet() const { return m_secretArnHasBeenSet; } /** *

The Amazon Resource Name (ARN) of the AWS Secret Manager secret that contains * the user name and password required to connect to the ServiceNow instance.

*/ inline void SetSecretArn(const Aws::String& value) { m_secretArnHasBeenSet = true; m_secretArn = value; } /** *

The Amazon Resource Name (ARN) of the AWS Secret Manager secret that contains * the user name and password required to connect to the ServiceNow instance.

*/ inline void SetSecretArn(Aws::String&& value) { m_secretArnHasBeenSet = true; m_secretArn = std::move(value); } /** *

The Amazon Resource Name (ARN) of the AWS Secret Manager secret that contains * the user name and password required to connect to the ServiceNow instance.

*/ inline void SetSecretArn(const char* value) { m_secretArnHasBeenSet = true; m_secretArn.assign(value); } /** *

The Amazon Resource Name (ARN) of the AWS Secret Manager secret that contains * the user name and password required to connect to the ServiceNow instance.

*/ inline ServiceNowConfiguration& WithSecretArn(const Aws::String& value) { SetSecretArn(value); return *this;} /** *

The Amazon Resource Name (ARN) of the AWS Secret Manager secret that contains * the user name and password required to connect to the ServiceNow instance.

*/ inline ServiceNowConfiguration& WithSecretArn(Aws::String&& value) { SetSecretArn(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the AWS Secret Manager secret that contains * the user name and password required to connect to the ServiceNow instance.

*/ inline ServiceNowConfiguration& WithSecretArn(const char* value) { SetSecretArn(value); return *this;} /** *

The identifier of the release that the ServiceNow host is running. If the * host is not running the LONDON release, use * OTHERS.

*/ inline const ServiceNowBuildVersionType& GetServiceNowBuildVersion() const{ return m_serviceNowBuildVersion; } /** *

The identifier of the release that the ServiceNow host is running. If the * host is not running the LONDON release, use * OTHERS.

*/ inline bool ServiceNowBuildVersionHasBeenSet() const { return m_serviceNowBuildVersionHasBeenSet; } /** *

The identifier of the release that the ServiceNow host is running. If the * host is not running the LONDON release, use * OTHERS.

*/ inline void SetServiceNowBuildVersion(const ServiceNowBuildVersionType& value) { m_serviceNowBuildVersionHasBeenSet = true; m_serviceNowBuildVersion = value; } /** *

The identifier of the release that the ServiceNow host is running. If the * host is not running the LONDON release, use * OTHERS.

*/ inline void SetServiceNowBuildVersion(ServiceNowBuildVersionType&& value) { m_serviceNowBuildVersionHasBeenSet = true; m_serviceNowBuildVersion = std::move(value); } /** *

The identifier of the release that the ServiceNow host is running. If the * host is not running the LONDON release, use * OTHERS.

*/ inline ServiceNowConfiguration& WithServiceNowBuildVersion(const ServiceNowBuildVersionType& value) { SetServiceNowBuildVersion(value); return *this;} /** *

The identifier of the release that the ServiceNow host is running. If the * host is not running the LONDON release, use * OTHERS.

*/ inline ServiceNowConfiguration& WithServiceNowBuildVersion(ServiceNowBuildVersionType&& value) { SetServiceNowBuildVersion(std::move(value)); return *this;} /** *

Provides configuration information for crawling knowledge articles in the * ServiceNow site.

*/ inline const ServiceNowKnowledgeArticleConfiguration& GetKnowledgeArticleConfiguration() const{ return m_knowledgeArticleConfiguration; } /** *

Provides configuration information for crawling knowledge articles in the * ServiceNow site.

*/ inline bool KnowledgeArticleConfigurationHasBeenSet() const { return m_knowledgeArticleConfigurationHasBeenSet; } /** *

Provides configuration information for crawling knowledge articles in the * ServiceNow site.

*/ inline void SetKnowledgeArticleConfiguration(const ServiceNowKnowledgeArticleConfiguration& value) { m_knowledgeArticleConfigurationHasBeenSet = true; m_knowledgeArticleConfiguration = value; } /** *

Provides configuration information for crawling knowledge articles in the * ServiceNow site.

*/ inline void SetKnowledgeArticleConfiguration(ServiceNowKnowledgeArticleConfiguration&& value) { m_knowledgeArticleConfigurationHasBeenSet = true; m_knowledgeArticleConfiguration = std::move(value); } /** *

Provides configuration information for crawling knowledge articles in the * ServiceNow site.

*/ inline ServiceNowConfiguration& WithKnowledgeArticleConfiguration(const ServiceNowKnowledgeArticleConfiguration& value) { SetKnowledgeArticleConfiguration(value); return *this;} /** *

Provides configuration information for crawling knowledge articles in the * ServiceNow site.

*/ inline ServiceNowConfiguration& WithKnowledgeArticleConfiguration(ServiceNowKnowledgeArticleConfiguration&& value) { SetKnowledgeArticleConfiguration(std::move(value)); return *this;} /** *

Provides configuration information for crawling service catalogs in the * ServiceNow site.

*/ inline const ServiceNowServiceCatalogConfiguration& GetServiceCatalogConfiguration() const{ return m_serviceCatalogConfiguration; } /** *

Provides configuration information for crawling service catalogs in the * ServiceNow site.

*/ inline bool ServiceCatalogConfigurationHasBeenSet() const { return m_serviceCatalogConfigurationHasBeenSet; } /** *

Provides configuration information for crawling service catalogs in the * ServiceNow site.

*/ inline void SetServiceCatalogConfiguration(const ServiceNowServiceCatalogConfiguration& value) { m_serviceCatalogConfigurationHasBeenSet = true; m_serviceCatalogConfiguration = value; } /** *

Provides configuration information for crawling service catalogs in the * ServiceNow site.

*/ inline void SetServiceCatalogConfiguration(ServiceNowServiceCatalogConfiguration&& value) { m_serviceCatalogConfigurationHasBeenSet = true; m_serviceCatalogConfiguration = std::move(value); } /** *

Provides configuration information for crawling service catalogs in the * ServiceNow site.

*/ inline ServiceNowConfiguration& WithServiceCatalogConfiguration(const ServiceNowServiceCatalogConfiguration& value) { SetServiceCatalogConfiguration(value); return *this;} /** *

Provides configuration information for crawling service catalogs in the * ServiceNow site.

*/ inline ServiceNowConfiguration& WithServiceCatalogConfiguration(ServiceNowServiceCatalogConfiguration&& value) { SetServiceCatalogConfiguration(std::move(value)); return *this;} private: Aws::String m_hostUrl; bool m_hostUrlHasBeenSet; Aws::String m_secretArn; bool m_secretArnHasBeenSet; ServiceNowBuildVersionType m_serviceNowBuildVersion; bool m_serviceNowBuildVersionHasBeenSet; ServiceNowKnowledgeArticleConfiguration m_knowledgeArticleConfiguration; bool m_knowledgeArticleConfigurationHasBeenSet; ServiceNowServiceCatalogConfiguration m_serviceCatalogConfiguration; bool m_serviceCatalogConfigurationHasBeenSet; }; } // namespace Model } // namespace kendra } // namespace Aws