/** * 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 IoTTwinMaker { namespace Model { /** *

A value that associates a component and an entity.

See Also:

* AWS * API Reference

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

The ID of the target entity associated with this relationship value.

*/ inline const Aws::String& GetTargetEntityId() const{ return m_targetEntityId; } /** *

The ID of the target entity associated with this relationship value.

*/ inline bool TargetEntityIdHasBeenSet() const { return m_targetEntityIdHasBeenSet; } /** *

The ID of the target entity associated with this relationship value.

*/ inline void SetTargetEntityId(const Aws::String& value) { m_targetEntityIdHasBeenSet = true; m_targetEntityId = value; } /** *

The ID of the target entity associated with this relationship value.

*/ inline void SetTargetEntityId(Aws::String&& value) { m_targetEntityIdHasBeenSet = true; m_targetEntityId = std::move(value); } /** *

The ID of the target entity associated with this relationship value.

*/ inline void SetTargetEntityId(const char* value) { m_targetEntityIdHasBeenSet = true; m_targetEntityId.assign(value); } /** *

The ID of the target entity associated with this relationship value.

*/ inline RelationshipValue& WithTargetEntityId(const Aws::String& value) { SetTargetEntityId(value); return *this;} /** *

The ID of the target entity associated with this relationship value.

*/ inline RelationshipValue& WithTargetEntityId(Aws::String&& value) { SetTargetEntityId(std::move(value)); return *this;} /** *

The ID of the target entity associated with this relationship value.

*/ inline RelationshipValue& WithTargetEntityId(const char* value) { SetTargetEntityId(value); return *this;} /** *

The name of the target component associated with the relationship value.

*/ inline const Aws::String& GetTargetComponentName() const{ return m_targetComponentName; } /** *

The name of the target component associated with the relationship value.

*/ inline bool TargetComponentNameHasBeenSet() const { return m_targetComponentNameHasBeenSet; } /** *

The name of the target component associated with the relationship value.

*/ inline void SetTargetComponentName(const Aws::String& value) { m_targetComponentNameHasBeenSet = true; m_targetComponentName = value; } /** *

The name of the target component associated with the relationship value.

*/ inline void SetTargetComponentName(Aws::String&& value) { m_targetComponentNameHasBeenSet = true; m_targetComponentName = std::move(value); } /** *

The name of the target component associated with the relationship value.

*/ inline void SetTargetComponentName(const char* value) { m_targetComponentNameHasBeenSet = true; m_targetComponentName.assign(value); } /** *

The name of the target component associated with the relationship value.

*/ inline RelationshipValue& WithTargetComponentName(const Aws::String& value) { SetTargetComponentName(value); return *this;} /** *

The name of the target component associated with the relationship value.

*/ inline RelationshipValue& WithTargetComponentName(Aws::String&& value) { SetTargetComponentName(std::move(value)); return *this;} /** *

The name of the target component associated with the relationship value.

*/ inline RelationshipValue& WithTargetComponentName(const char* value) { SetTargetComponentName(value); return *this;} private: Aws::String m_targetEntityId; bool m_targetEntityIdHasBeenSet = false; Aws::String m_targetComponentName; bool m_targetComponentNameHasBeenSet = false; }; } // namespace Model } // namespace IoTTwinMaker } // namespace Aws