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

A structure returned by the ListGroupResources operation that contains * identity and group membership status information for one of the resources in the * group.

See Also:

AWS * API Reference

*/ class ListGroupResourcesItem { public: AWS_RESOURCEGROUPS_API ListGroupResourcesItem(); AWS_RESOURCEGROUPS_API ListGroupResourcesItem(Aws::Utils::Json::JsonView jsonValue); AWS_RESOURCEGROUPS_API ListGroupResourcesItem& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_RESOURCEGROUPS_API Aws::Utils::Json::JsonValue Jsonize() const; inline const ResourceIdentifier& GetIdentifier() const{ return m_identifier; } inline bool IdentifierHasBeenSet() const { return m_identifierHasBeenSet; } inline void SetIdentifier(const ResourceIdentifier& value) { m_identifierHasBeenSet = true; m_identifier = value; } inline void SetIdentifier(ResourceIdentifier&& value) { m_identifierHasBeenSet = true; m_identifier = std::move(value); } inline ListGroupResourcesItem& WithIdentifier(const ResourceIdentifier& value) { SetIdentifier(value); return *this;} inline ListGroupResourcesItem& WithIdentifier(ResourceIdentifier&& value) { SetIdentifier(std::move(value)); return *this;} /** *

A structure that contains the status of this resource's membership in the * group.

This field is present in the response only if the group is * of type AWS::EC2::HostManagement.

*/ inline const ResourceStatus& GetStatus() const{ return m_status; } /** *

A structure that contains the status of this resource's membership in the * group.

This field is present in the response only if the group is * of type AWS::EC2::HostManagement.

*/ inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; } /** *

A structure that contains the status of this resource's membership in the * group.

This field is present in the response only if the group is * of type AWS::EC2::HostManagement.

*/ inline void SetStatus(const ResourceStatus& value) { m_statusHasBeenSet = true; m_status = value; } /** *

A structure that contains the status of this resource's membership in the * group.

This field is present in the response only if the group is * of type AWS::EC2::HostManagement.

*/ inline void SetStatus(ResourceStatus&& value) { m_statusHasBeenSet = true; m_status = std::move(value); } /** *

A structure that contains the status of this resource's membership in the * group.

This field is present in the response only if the group is * of type AWS::EC2::HostManagement.

*/ inline ListGroupResourcesItem& WithStatus(const ResourceStatus& value) { SetStatus(value); return *this;} /** *

A structure that contains the status of this resource's membership in the * group.

This field is present in the response only if the group is * of type AWS::EC2::HostManagement.

*/ inline ListGroupResourcesItem& WithStatus(ResourceStatus&& value) { SetStatus(std::move(value)); return *this;} private: ResourceIdentifier m_identifier; bool m_identifierHasBeenSet = false; ResourceStatus m_status; bool m_statusHasBeenSet = false; }; } // namespace Model } // namespace ResourceGroups } // namespace Aws