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

Contains the identifier of an entity, including its ID and type.

This * data type is used as a request parameter for IsAuthorized * operation, and as a response parameter for the CreatePolicy, * GetPolicy, * and UpdatePolicy * operations.

Example: * {"entityId":"string","entityType":"string"} *

See Also:

AWS * API Reference

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

The type of an entity.

Example: * "entityType":"typeName"

*/ inline const Aws::String& GetEntityType() const{ return m_entityType; } /** *

The type of an entity.

Example: * "entityType":"typeName"

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

The type of an entity.

Example: * "entityType":"typeName"

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

The type of an entity.

Example: * "entityType":"typeName"

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

The type of an entity.

Example: * "entityType":"typeName"

*/ inline void SetEntityType(const char* value) { m_entityTypeHasBeenSet = true; m_entityType.assign(value); } /** *

The type of an entity.

Example: * "entityType":"typeName"

*/ inline EntityIdentifier& WithEntityType(const Aws::String& value) { SetEntityType(value); return *this;} /** *

The type of an entity.

Example: * "entityType":"typeName"

*/ inline EntityIdentifier& WithEntityType(Aws::String&& value) { SetEntityType(std::move(value)); return *this;} /** *

The type of an entity.

Example: * "entityType":"typeName"

*/ inline EntityIdentifier& WithEntityType(const char* value) { SetEntityType(value); return *this;} /** *

The identifier of an entity.

* "entityId":"identifier"

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

The identifier of an entity.

* "entityId":"identifier"

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

The identifier of an entity.

* "entityId":"identifier"

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

The identifier of an entity.

* "entityId":"identifier"

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

The identifier of an entity.

* "entityId":"identifier"

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

The identifier of an entity.

* "entityId":"identifier"

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

The identifier of an entity.

* "entityId":"identifier"

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

The identifier of an entity.

* "entityId":"identifier"

*/ inline EntityIdentifier& WithEntityId(const char* value) { SetEntityId(value); return *this;} private: Aws::String m_entityType; bool m_entityTypeHasBeenSet = false; Aws::String m_entityId; bool m_entityIdHasBeenSet = false; }; } // namespace Model } // namespace VerifiedPermissions } // namespace Aws