/** * 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 IoTTwinMaker { namespace Model { /** */ class CreateEntityRequest : public IoTTwinMakerRequest { public: AWS_IOTTWINMAKER_API CreateEntityRequest(); // Service request name is the Operation name which will send this request out, // each operation should has unique request name, so that we can get operation's name from this request. // Note: this is not true for response, multiple operations may have the same response name, // so we can not get operation's name from response. inline virtual const char* GetServiceRequestName() const override { return "CreateEntity"; } AWS_IOTTWINMAKER_API Aws::String SerializePayload() const override; /** *

The ID of the workspace that contains the entity.

*/ inline const Aws::String& GetWorkspaceId() const{ return m_workspaceId; } /** *

The ID of the workspace that contains the entity.

*/ inline bool WorkspaceIdHasBeenSet() const { return m_workspaceIdHasBeenSet; } /** *

The ID of the workspace that contains the entity.

*/ inline void SetWorkspaceId(const Aws::String& value) { m_workspaceIdHasBeenSet = true; m_workspaceId = value; } /** *

The ID of the workspace that contains the entity.

*/ inline void SetWorkspaceId(Aws::String&& value) { m_workspaceIdHasBeenSet = true; m_workspaceId = std::move(value); } /** *

The ID of the workspace that contains the entity.

*/ inline void SetWorkspaceId(const char* value) { m_workspaceIdHasBeenSet = true; m_workspaceId.assign(value); } /** *

The ID of the workspace that contains the entity.

*/ inline CreateEntityRequest& WithWorkspaceId(const Aws::String& value) { SetWorkspaceId(value); return *this;} /** *

The ID of the workspace that contains the entity.

*/ inline CreateEntityRequest& WithWorkspaceId(Aws::String&& value) { SetWorkspaceId(std::move(value)); return *this;} /** *

The ID of the workspace that contains the entity.

*/ inline CreateEntityRequest& WithWorkspaceId(const char* value) { SetWorkspaceId(value); return *this;} /** *

The ID of the entity.

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

The ID of the entity.

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

The ID of the entity.

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

The ID of the entity.

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

The ID of the entity.

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

The ID of the entity.

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

The ID of the entity.

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

The ID of the entity.

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

The name of the entity.

*/ inline const Aws::String& GetEntityName() const{ return m_entityName; } /** *

The name of the entity.

*/ inline bool EntityNameHasBeenSet() const { return m_entityNameHasBeenSet; } /** *

The name of the entity.

*/ inline void SetEntityName(const Aws::String& value) { m_entityNameHasBeenSet = true; m_entityName = value; } /** *

The name of the entity.

*/ inline void SetEntityName(Aws::String&& value) { m_entityNameHasBeenSet = true; m_entityName = std::move(value); } /** *

The name of the entity.

*/ inline void SetEntityName(const char* value) { m_entityNameHasBeenSet = true; m_entityName.assign(value); } /** *

The name of the entity.

*/ inline CreateEntityRequest& WithEntityName(const Aws::String& value) { SetEntityName(value); return *this;} /** *

The name of the entity.

*/ inline CreateEntityRequest& WithEntityName(Aws::String&& value) { SetEntityName(std::move(value)); return *this;} /** *

The name of the entity.

*/ inline CreateEntityRequest& WithEntityName(const char* value) { SetEntityName(value); return *this;} /** *

The description of the entity.

*/ inline const Aws::String& GetDescription() const{ return m_description; } /** *

The description of the entity.

*/ inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; } /** *

The description of the entity.

*/ inline void SetDescription(const Aws::String& value) { m_descriptionHasBeenSet = true; m_description = value; } /** *

The description of the entity.

*/ inline void SetDescription(Aws::String&& value) { m_descriptionHasBeenSet = true; m_description = std::move(value); } /** *

The description of the entity.

*/ inline void SetDescription(const char* value) { m_descriptionHasBeenSet = true; m_description.assign(value); } /** *

The description of the entity.

*/ inline CreateEntityRequest& WithDescription(const Aws::String& value) { SetDescription(value); return *this;} /** *

The description of the entity.

*/ inline CreateEntityRequest& WithDescription(Aws::String&& value) { SetDescription(std::move(value)); return *this;} /** *

The description of the entity.

*/ inline CreateEntityRequest& WithDescription(const char* value) { SetDescription(value); return *this;} /** *

An object that maps strings to the components in the entity. Each string in * the mapping must be unique to this object.

*/ inline const Aws::Map& GetComponents() const{ return m_components; } /** *

An object that maps strings to the components in the entity. Each string in * the mapping must be unique to this object.

*/ inline bool ComponentsHasBeenSet() const { return m_componentsHasBeenSet; } /** *

An object that maps strings to the components in the entity. Each string in * the mapping must be unique to this object.

*/ inline void SetComponents(const Aws::Map& value) { m_componentsHasBeenSet = true; m_components = value; } /** *

An object that maps strings to the components in the entity. Each string in * the mapping must be unique to this object.

*/ inline void SetComponents(Aws::Map&& value) { m_componentsHasBeenSet = true; m_components = std::move(value); } /** *

An object that maps strings to the components in the entity. Each string in * the mapping must be unique to this object.

*/ inline CreateEntityRequest& WithComponents(const Aws::Map& value) { SetComponents(value); return *this;} /** *

An object that maps strings to the components in the entity. Each string in * the mapping must be unique to this object.

*/ inline CreateEntityRequest& WithComponents(Aws::Map&& value) { SetComponents(std::move(value)); return *this;} /** *

An object that maps strings to the components in the entity. Each string in * the mapping must be unique to this object.

*/ inline CreateEntityRequest& AddComponents(const Aws::String& key, const ComponentRequest& value) { m_componentsHasBeenSet = true; m_components.emplace(key, value); return *this; } /** *

An object that maps strings to the components in the entity. Each string in * the mapping must be unique to this object.

*/ inline CreateEntityRequest& AddComponents(Aws::String&& key, const ComponentRequest& value) { m_componentsHasBeenSet = true; m_components.emplace(std::move(key), value); return *this; } /** *

An object that maps strings to the components in the entity. Each string in * the mapping must be unique to this object.

*/ inline CreateEntityRequest& AddComponents(const Aws::String& key, ComponentRequest&& value) { m_componentsHasBeenSet = true; m_components.emplace(key, std::move(value)); return *this; } /** *

An object that maps strings to the components in the entity. Each string in * the mapping must be unique to this object.

*/ inline CreateEntityRequest& AddComponents(Aws::String&& key, ComponentRequest&& value) { m_componentsHasBeenSet = true; m_components.emplace(std::move(key), std::move(value)); return *this; } /** *

An object that maps strings to the components in the entity. Each string in * the mapping must be unique to this object.

*/ inline CreateEntityRequest& AddComponents(const char* key, ComponentRequest&& value) { m_componentsHasBeenSet = true; m_components.emplace(key, std::move(value)); return *this; } /** *

An object that maps strings to the components in the entity. Each string in * the mapping must be unique to this object.

*/ inline CreateEntityRequest& AddComponents(const char* key, const ComponentRequest& value) { m_componentsHasBeenSet = true; m_components.emplace(key, value); return *this; } /** *

The ID of the entity's parent entity.

*/ inline const Aws::String& GetParentEntityId() const{ return m_parentEntityId; } /** *

The ID of the entity's parent entity.

*/ inline bool ParentEntityIdHasBeenSet() const { return m_parentEntityIdHasBeenSet; } /** *

The ID of the entity's parent entity.

*/ inline void SetParentEntityId(const Aws::String& value) { m_parentEntityIdHasBeenSet = true; m_parentEntityId = value; } /** *

The ID of the entity's parent entity.

*/ inline void SetParentEntityId(Aws::String&& value) { m_parentEntityIdHasBeenSet = true; m_parentEntityId = std::move(value); } /** *

The ID of the entity's parent entity.

*/ inline void SetParentEntityId(const char* value) { m_parentEntityIdHasBeenSet = true; m_parentEntityId.assign(value); } /** *

The ID of the entity's parent entity.

*/ inline CreateEntityRequest& WithParentEntityId(const Aws::String& value) { SetParentEntityId(value); return *this;} /** *

The ID of the entity's parent entity.

*/ inline CreateEntityRequest& WithParentEntityId(Aws::String&& value) { SetParentEntityId(std::move(value)); return *this;} /** *

The ID of the entity's parent entity.

*/ inline CreateEntityRequest& WithParentEntityId(const char* value) { SetParentEntityId(value); return *this;} /** *

Metadata that you can use to manage the entity.

*/ inline const Aws::Map& GetTags() const{ return m_tags; } /** *

Metadata that you can use to manage the entity.

*/ inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; } /** *

Metadata that you can use to manage the entity.

*/ inline void SetTags(const Aws::Map& value) { m_tagsHasBeenSet = true; m_tags = value; } /** *

Metadata that you can use to manage the entity.

*/ inline void SetTags(Aws::Map&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); } /** *

Metadata that you can use to manage the entity.

*/ inline CreateEntityRequest& WithTags(const Aws::Map& value) { SetTags(value); return *this;} /** *

Metadata that you can use to manage the entity.

*/ inline CreateEntityRequest& WithTags(Aws::Map&& value) { SetTags(std::move(value)); return *this;} /** *

Metadata that you can use to manage the entity.

*/ inline CreateEntityRequest& AddTags(const Aws::String& key, const Aws::String& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, value); return *this; } /** *

Metadata that you can use to manage the entity.

*/ inline CreateEntityRequest& AddTags(Aws::String&& key, const Aws::String& value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), value); return *this; } /** *

Metadata that you can use to manage the entity.

*/ inline CreateEntityRequest& AddTags(const Aws::String& key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, std::move(value)); return *this; } /** *

Metadata that you can use to manage the entity.

*/ inline CreateEntityRequest& AddTags(Aws::String&& key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), std::move(value)); return *this; } /** *

Metadata that you can use to manage the entity.

*/ inline CreateEntityRequest& AddTags(const char* key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, std::move(value)); return *this; } /** *

Metadata that you can use to manage the entity.

*/ inline CreateEntityRequest& AddTags(Aws::String&& key, const char* value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), value); return *this; } /** *

Metadata that you can use to manage the entity.

*/ inline CreateEntityRequest& AddTags(const char* key, const char* value) { m_tagsHasBeenSet = true; m_tags.emplace(key, value); return *this; } private: Aws::String m_workspaceId; bool m_workspaceIdHasBeenSet = false; Aws::String m_entityId; bool m_entityIdHasBeenSet = false; Aws::String m_entityName; bool m_entityNameHasBeenSet = false; Aws::String m_description; bool m_descriptionHasBeenSet = false; Aws::Map m_components; bool m_componentsHasBeenSet = false; Aws::String m_parentEntityId; bool m_parentEntityIdHasBeenSet = false; Aws::Map m_tags; bool m_tagsHasBeenSet = false; }; } // namespace Model } // namespace IoTTwinMaker } // namespace Aws