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

The information about the resource.

See Also:

AWS * API Reference

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

The name of the resource.

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

The name of the resource.

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

The name of the resource.

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

The name of the resource.

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

The name of the resource.

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

The name of the resource.

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

The name of the resource.

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

The name of the resource.

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

The Amazon resource name (ARN) that specifies the resource across * services.

*/ inline const Aws::String& GetArn() const{ return m_arn; } /** *

The Amazon resource name (ARN) that specifies the resource across * services.

*/ inline bool ArnHasBeenSet() const { return m_arnHasBeenSet; } /** *

The Amazon resource name (ARN) that specifies the resource across * services.

*/ inline void SetArn(const Aws::String& value) { m_arnHasBeenSet = true; m_arn = value; } /** *

The Amazon resource name (ARN) that specifies the resource across * services.

*/ inline void SetArn(Aws::String&& value) { m_arnHasBeenSet = true; m_arn = std::move(value); } /** *

The Amazon resource name (ARN) that specifies the resource across * services.

*/ inline void SetArn(const char* value) { m_arnHasBeenSet = true; m_arn.assign(value); } /** *

The Amazon resource name (ARN) that specifies the resource across * services.

*/ inline ResourceInfo& WithArn(const Aws::String& value) { SetArn(value); return *this;} /** *

The Amazon resource name (ARN) that specifies the resource across * services.

*/ inline ResourceInfo& WithArn(Aws::String&& value) { SetArn(std::move(value)); return *this;} /** *

The Amazon resource name (ARN) that specifies the resource across * services.

*/ inline ResourceInfo& WithArn(const char* value) { SetArn(value); return *this;} /** *

Provides information about the Service Catalog App Registry resource type. *

*/ inline const ResourceType& GetResourceType() const{ return m_resourceType; } /** *

Provides information about the Service Catalog App Registry resource type. *

*/ inline bool ResourceTypeHasBeenSet() const { return m_resourceTypeHasBeenSet; } /** *

Provides information about the Service Catalog App Registry resource type. *

*/ inline void SetResourceType(const ResourceType& value) { m_resourceTypeHasBeenSet = true; m_resourceType = value; } /** *

Provides information about the Service Catalog App Registry resource type. *

*/ inline void SetResourceType(ResourceType&& value) { m_resourceTypeHasBeenSet = true; m_resourceType = std::move(value); } /** *

Provides information about the Service Catalog App Registry resource type. *

*/ inline ResourceInfo& WithResourceType(const ResourceType& value) { SetResourceType(value); return *this;} /** *

Provides information about the Service Catalog App Registry resource type. *

*/ inline ResourceInfo& WithResourceType(ResourceType&& value) { SetResourceType(std::move(value)); return *this;} /** *

The details related to the resource.

*/ inline const ResourceDetails& GetResourceDetails() const{ return m_resourceDetails; } /** *

The details related to the resource.

*/ inline bool ResourceDetailsHasBeenSet() const { return m_resourceDetailsHasBeenSet; } /** *

The details related to the resource.

*/ inline void SetResourceDetails(const ResourceDetails& value) { m_resourceDetailsHasBeenSet = true; m_resourceDetails = value; } /** *

The details related to the resource.

*/ inline void SetResourceDetails(ResourceDetails&& value) { m_resourceDetailsHasBeenSet = true; m_resourceDetails = std::move(value); } /** *

The details related to the resource.

*/ inline ResourceInfo& WithResourceDetails(const ResourceDetails& value) { SetResourceDetails(value); return *this;} /** *

The details related to the resource.

*/ inline ResourceInfo& WithResourceDetails(ResourceDetails&& value) { SetResourceDetails(std::move(value)); return *this;} private: Aws::String m_name; bool m_nameHasBeenSet = false; Aws::String m_arn; bool m_arnHasBeenSet = false; ResourceType m_resourceType; bool m_resourceTypeHasBeenSet = false; ResourceDetails m_resourceDetails; bool m_resourceDetailsHasBeenSet = false; }; } // namespace Model } // namespace AppRegistry } // namespace Aws