/** * 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 users or groups in your IAM * Identity Center identity source to grant access your Amazon Kendra * experience.

See Also:

AWS * API Reference

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

The identifier of a user or group in your IAM Identity Center identity * source. For example, a user ID could be an email.

*/ inline const Aws::String& GetEntityId() const{ return m_entityId; } /** *

The identifier of a user or group in your IAM Identity Center identity * source. For example, a user ID could be an email.

*/ inline bool EntityIdHasBeenSet() const { return m_entityIdHasBeenSet; } /** *

The identifier of a user or group in your IAM Identity Center identity * source. For example, a user ID could be an email.

*/ inline void SetEntityId(const Aws::String& value) { m_entityIdHasBeenSet = true; m_entityId = value; } /** *

The identifier of a user or group in your IAM Identity Center identity * source. For example, a user ID could be an email.

*/ inline void SetEntityId(Aws::String&& value) { m_entityIdHasBeenSet = true; m_entityId = std::move(value); } /** *

The identifier of a user or group in your IAM Identity Center identity * source. For example, a user ID could be an email.

*/ inline void SetEntityId(const char* value) { m_entityIdHasBeenSet = true; m_entityId.assign(value); } /** *

The identifier of a user or group in your IAM Identity Center identity * source. For example, a user ID could be an email.

*/ inline EntityConfiguration& WithEntityId(const Aws::String& value) { SetEntityId(value); return *this;} /** *

The identifier of a user or group in your IAM Identity Center identity * source. For example, a user ID could be an email.

*/ inline EntityConfiguration& WithEntityId(Aws::String&& value) { SetEntityId(std::move(value)); return *this;} /** *

The identifier of a user or group in your IAM Identity Center identity * source. For example, a user ID could be an email.

*/ inline EntityConfiguration& WithEntityId(const char* value) { SetEntityId(value); return *this;} /** *

Specifies whether you are configuring a User or a * Group.

*/ inline const EntityType& GetEntityType() const{ return m_entityType; } /** *

Specifies whether you are configuring a User or a * Group.

*/ inline bool EntityTypeHasBeenSet() const { return m_entityTypeHasBeenSet; } /** *

Specifies whether you are configuring a User or a * Group.

*/ inline void SetEntityType(const EntityType& value) { m_entityTypeHasBeenSet = true; m_entityType = value; } /** *

Specifies whether you are configuring a User or a * Group.

*/ inline void SetEntityType(EntityType&& value) { m_entityTypeHasBeenSet = true; m_entityType = std::move(value); } /** *

Specifies whether you are configuring a User or a * Group.

*/ inline EntityConfiguration& WithEntityType(const EntityType& value) { SetEntityType(value); return *this;} /** *

Specifies whether you are configuring a User or a * Group.

*/ inline EntityConfiguration& WithEntityType(EntityType&& value) { SetEntityType(std::move(value)); return *this;} private: Aws::String m_entityId; bool m_entityIdHasBeenSet = false; EntityType m_entityType; bool m_entityTypeHasBeenSet = false; }; } // namespace Model } // namespace kendra } // namespace Aws