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

Summarizes the resource sets used in a policy.

See Also:

AWS * API Reference

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

A unique identifier for the resource set. This ID is returned in the * responses to create and list commands. You provide it to operations like update * and delete.

*/ inline const Aws::String& GetId() const{ return m_id; } /** *

A unique identifier for the resource set. This ID is returned in the * responses to create and list commands. You provide it to operations like update * and delete.

*/ inline bool IdHasBeenSet() const { return m_idHasBeenSet; } /** *

A unique identifier for the resource set. This ID is returned in the * responses to create and list commands. You provide it to operations like update * and delete.

*/ inline void SetId(const Aws::String& value) { m_idHasBeenSet = true; m_id = value; } /** *

A unique identifier for the resource set. This ID is returned in the * responses to create and list commands. You provide it to operations like update * and delete.

*/ inline void SetId(Aws::String&& value) { m_idHasBeenSet = true; m_id = std::move(value); } /** *

A unique identifier for the resource set. This ID is returned in the * responses to create and list commands. You provide it to operations like update * and delete.

*/ inline void SetId(const char* value) { m_idHasBeenSet = true; m_id.assign(value); } /** *

A unique identifier for the resource set. This ID is returned in the * responses to create and list commands. You provide it to operations like update * and delete.

*/ inline ResourceSetSummary& WithId(const Aws::String& value) { SetId(value); return *this;} /** *

A unique identifier for the resource set. This ID is returned in the * responses to create and list commands. You provide it to operations like update * and delete.

*/ inline ResourceSetSummary& WithId(Aws::String&& value) { SetId(std::move(value)); return *this;} /** *

A unique identifier for the resource set. This ID is returned in the * responses to create and list commands. You provide it to operations like update * and delete.

*/ inline ResourceSetSummary& WithId(const char* value) { SetId(value); return *this;} /** *

The descriptive name of the resource set. You can't change the name of a * resource set after you create it.

*/ inline const Aws::String& GetName() const{ return m_name; } /** *

The descriptive name of the resource set. You can't change the name of a * resource set after you create it.

*/ inline bool NameHasBeenSet() const { return m_nameHasBeenSet; } /** *

The descriptive name of the resource set. You can't change the name of a * resource set after you create it.

*/ inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; } /** *

The descriptive name of the resource set. You can't change the name of a * resource set after you create it.

*/ inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); } /** *

The descriptive name of the resource set. You can't change the name of a * resource set after you create it.

*/ inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); } /** *

The descriptive name of the resource set. You can't change the name of a * resource set after you create it.

*/ inline ResourceSetSummary& WithName(const Aws::String& value) { SetName(value); return *this;} /** *

The descriptive name of the resource set. You can't change the name of a * resource set after you create it.

*/ inline ResourceSetSummary& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;} /** *

The descriptive name of the resource set. You can't change the name of a * resource set after you create it.

*/ inline ResourceSetSummary& WithName(const char* value) { SetName(value); return *this;} /** *

A description of the resource set.

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

A description of the resource set.

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

A description of the resource set.

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

A description of the resource set.

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

A description of the resource set.

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

A description of the resource set.

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

A description of the resource set.

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

A description of the resource set.

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

The last time that the resource set was changed.

*/ inline const Aws::Utils::DateTime& GetLastUpdateTime() const{ return m_lastUpdateTime; } /** *

The last time that the resource set was changed.

*/ inline bool LastUpdateTimeHasBeenSet() const { return m_lastUpdateTimeHasBeenSet; } /** *

The last time that the resource set was changed.

*/ inline void SetLastUpdateTime(const Aws::Utils::DateTime& value) { m_lastUpdateTimeHasBeenSet = true; m_lastUpdateTime = value; } /** *

The last time that the resource set was changed.

*/ inline void SetLastUpdateTime(Aws::Utils::DateTime&& value) { m_lastUpdateTimeHasBeenSet = true; m_lastUpdateTime = std::move(value); } /** *

The last time that the resource set was changed.

*/ inline ResourceSetSummary& WithLastUpdateTime(const Aws::Utils::DateTime& value) { SetLastUpdateTime(value); return *this;} /** *

The last time that the resource set was changed.

*/ inline ResourceSetSummary& WithLastUpdateTime(Aws::Utils::DateTime&& value) { SetLastUpdateTime(std::move(value)); return *this;} /** *

Indicates whether the resource set is in or out of an admin's Region * scope.

  • ACTIVE - The administrator can manage and * delete the resource set.

  • OUT_OF_ADMIN_SCOPE - * The administrator can view the resource set, but they can't edit or delete the * resource set. Existing protections stay in place. Any new resource that come * into scope of the resource set won't be protected.

*/ inline const ResourceSetStatus& GetResourceSetStatus() const{ return m_resourceSetStatus; } /** *

Indicates whether the resource set is in or out of an admin's Region * scope.

  • ACTIVE - The administrator can manage and * delete the resource set.

  • OUT_OF_ADMIN_SCOPE - * The administrator can view the resource set, but they can't edit or delete the * resource set. Existing protections stay in place. Any new resource that come * into scope of the resource set won't be protected.

*/ inline bool ResourceSetStatusHasBeenSet() const { return m_resourceSetStatusHasBeenSet; } /** *

Indicates whether the resource set is in or out of an admin's Region * scope.

  • ACTIVE - The administrator can manage and * delete the resource set.

  • OUT_OF_ADMIN_SCOPE - * The administrator can view the resource set, but they can't edit or delete the * resource set. Existing protections stay in place. Any new resource that come * into scope of the resource set won't be protected.

*/ inline void SetResourceSetStatus(const ResourceSetStatus& value) { m_resourceSetStatusHasBeenSet = true; m_resourceSetStatus = value; } /** *

Indicates whether the resource set is in or out of an admin's Region * scope.

  • ACTIVE - The administrator can manage and * delete the resource set.

  • OUT_OF_ADMIN_SCOPE - * The administrator can view the resource set, but they can't edit or delete the * resource set. Existing protections stay in place. Any new resource that come * into scope of the resource set won't be protected.

*/ inline void SetResourceSetStatus(ResourceSetStatus&& value) { m_resourceSetStatusHasBeenSet = true; m_resourceSetStatus = std::move(value); } /** *

Indicates whether the resource set is in or out of an admin's Region * scope.

  • ACTIVE - The administrator can manage and * delete the resource set.

  • OUT_OF_ADMIN_SCOPE - * The administrator can view the resource set, but they can't edit or delete the * resource set. Existing protections stay in place. Any new resource that come * into scope of the resource set won't be protected.

*/ inline ResourceSetSummary& WithResourceSetStatus(const ResourceSetStatus& value) { SetResourceSetStatus(value); return *this;} /** *

Indicates whether the resource set is in or out of an admin's Region * scope.

  • ACTIVE - The administrator can manage and * delete the resource set.

  • OUT_OF_ADMIN_SCOPE - * The administrator can view the resource set, but they can't edit or delete the * resource set. Existing protections stay in place. Any new resource that come * into scope of the resource set won't be protected.

*/ inline ResourceSetSummary& WithResourceSetStatus(ResourceSetStatus&& value) { SetResourceSetStatus(std::move(value)); return *this;} private: Aws::String m_id; bool m_idHasBeenSet = false; Aws::String m_name; bool m_nameHasBeenSet = false; Aws::String m_description; bool m_descriptionHasBeenSet = false; Aws::Utils::DateTime m_lastUpdateTime; bool m_lastUpdateTimeHasBeenSet = false; ResourceSetStatus m_resourceSetStatus; bool m_resourceSetStatusHasBeenSet = false; }; } // namespace Model } // namespace FMS } // namespace Aws