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

Returns information about the resource being evaluated.

See * Also:

AWS * API Reference

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

A unique resource ID for an evaluation.

*/ inline const Aws::String& GetResourceId() const{ return m_resourceId; } /** *

A unique resource ID for an evaluation.

*/ inline bool ResourceIdHasBeenSet() const { return m_resourceIdHasBeenSet; } /** *

A unique resource ID for an evaluation.

*/ inline void SetResourceId(const Aws::String& value) { m_resourceIdHasBeenSet = true; m_resourceId = value; } /** *

A unique resource ID for an evaluation.

*/ inline void SetResourceId(Aws::String&& value) { m_resourceIdHasBeenSet = true; m_resourceId = std::move(value); } /** *

A unique resource ID for an evaluation.

*/ inline void SetResourceId(const char* value) { m_resourceIdHasBeenSet = true; m_resourceId.assign(value); } /** *

A unique resource ID for an evaluation.

*/ inline ResourceDetails& WithResourceId(const Aws::String& value) { SetResourceId(value); return *this;} /** *

A unique resource ID for an evaluation.

*/ inline ResourceDetails& WithResourceId(Aws::String&& value) { SetResourceId(std::move(value)); return *this;} /** *

A unique resource ID for an evaluation.

*/ inline ResourceDetails& WithResourceId(const char* value) { SetResourceId(value); return *this;} /** *

The type of resource being evaluated.

*/ inline const Aws::String& GetResourceType() const{ return m_resourceType; } /** *

The type of resource being evaluated.

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

The type of resource being evaluated.

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

The type of resource being evaluated.

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

The type of resource being evaluated.

*/ inline void SetResourceType(const char* value) { m_resourceTypeHasBeenSet = true; m_resourceType.assign(value); } /** *

The type of resource being evaluated.

*/ inline ResourceDetails& WithResourceType(const Aws::String& value) { SetResourceType(value); return *this;} /** *

The type of resource being evaluated.

*/ inline ResourceDetails& WithResourceType(Aws::String&& value) { SetResourceType(std::move(value)); return *this;} /** *

The type of resource being evaluated.

*/ inline ResourceDetails& WithResourceType(const char* value) { SetResourceType(value); return *this;} /** *

The resource definition to be evaluated as per the resource configuration * schema type.

*/ inline const Aws::String& GetResourceConfiguration() const{ return m_resourceConfiguration; } /** *

The resource definition to be evaluated as per the resource configuration * schema type.

*/ inline bool ResourceConfigurationHasBeenSet() const { return m_resourceConfigurationHasBeenSet; } /** *

The resource definition to be evaluated as per the resource configuration * schema type.

*/ inline void SetResourceConfiguration(const Aws::String& value) { m_resourceConfigurationHasBeenSet = true; m_resourceConfiguration = value; } /** *

The resource definition to be evaluated as per the resource configuration * schema type.

*/ inline void SetResourceConfiguration(Aws::String&& value) { m_resourceConfigurationHasBeenSet = true; m_resourceConfiguration = std::move(value); } /** *

The resource definition to be evaluated as per the resource configuration * schema type.

*/ inline void SetResourceConfiguration(const char* value) { m_resourceConfigurationHasBeenSet = true; m_resourceConfiguration.assign(value); } /** *

The resource definition to be evaluated as per the resource configuration * schema type.

*/ inline ResourceDetails& WithResourceConfiguration(const Aws::String& value) { SetResourceConfiguration(value); return *this;} /** *

The resource definition to be evaluated as per the resource configuration * schema type.

*/ inline ResourceDetails& WithResourceConfiguration(Aws::String&& value) { SetResourceConfiguration(std::move(value)); return *this;} /** *

The resource definition to be evaluated as per the resource configuration * schema type.

*/ inline ResourceDetails& WithResourceConfiguration(const char* value) { SetResourceConfiguration(value); return *this;} /** *

The schema type of the resource configuration.

You can find the * Resource * type schema, or CFN_RESOURCE_SCHEMA, in "Amazon Web Services * public extensions" within the CloudFormation registry or with the following * CLI commmand: aws cloudformation describe-type --type-name * "AWS::S3::Bucket" --type RESOURCE.

For more information, see Managing * extensions through the CloudFormation registry and Amazon * Web Services resource and property types reference in the CloudFormation * User Guide.

*/ inline const ResourceConfigurationSchemaType& GetResourceConfigurationSchemaType() const{ return m_resourceConfigurationSchemaType; } /** *

The schema type of the resource configuration.

You can find the * Resource * type schema, or CFN_RESOURCE_SCHEMA, in "Amazon Web Services * public extensions" within the CloudFormation registry or with the following * CLI commmand: aws cloudformation describe-type --type-name * "AWS::S3::Bucket" --type RESOURCE.

For more information, see Managing * extensions through the CloudFormation registry and Amazon * Web Services resource and property types reference in the CloudFormation * User Guide.

*/ inline bool ResourceConfigurationSchemaTypeHasBeenSet() const { return m_resourceConfigurationSchemaTypeHasBeenSet; } /** *

The schema type of the resource configuration.

You can find the * Resource * type schema, or CFN_RESOURCE_SCHEMA, in "Amazon Web Services * public extensions" within the CloudFormation registry or with the following * CLI commmand: aws cloudformation describe-type --type-name * "AWS::S3::Bucket" --type RESOURCE.

For more information, see Managing * extensions through the CloudFormation registry and Amazon * Web Services resource and property types reference in the CloudFormation * User Guide.

*/ inline void SetResourceConfigurationSchemaType(const ResourceConfigurationSchemaType& value) { m_resourceConfigurationSchemaTypeHasBeenSet = true; m_resourceConfigurationSchemaType = value; } /** *

The schema type of the resource configuration.

You can find the * Resource * type schema, or CFN_RESOURCE_SCHEMA, in "Amazon Web Services * public extensions" within the CloudFormation registry or with the following * CLI commmand: aws cloudformation describe-type --type-name * "AWS::S3::Bucket" --type RESOURCE.

For more information, see Managing * extensions through the CloudFormation registry and Amazon * Web Services resource and property types reference in the CloudFormation * User Guide.

*/ inline void SetResourceConfigurationSchemaType(ResourceConfigurationSchemaType&& value) { m_resourceConfigurationSchemaTypeHasBeenSet = true; m_resourceConfigurationSchemaType = std::move(value); } /** *

The schema type of the resource configuration.

You can find the * Resource * type schema, or CFN_RESOURCE_SCHEMA, in "Amazon Web Services * public extensions" within the CloudFormation registry or with the following * CLI commmand: aws cloudformation describe-type --type-name * "AWS::S3::Bucket" --type RESOURCE.

For more information, see Managing * extensions through the CloudFormation registry and Amazon * Web Services resource and property types reference in the CloudFormation * User Guide.

*/ inline ResourceDetails& WithResourceConfigurationSchemaType(const ResourceConfigurationSchemaType& value) { SetResourceConfigurationSchemaType(value); return *this;} /** *

The schema type of the resource configuration.

You can find the * Resource * type schema, or CFN_RESOURCE_SCHEMA, in "Amazon Web Services * public extensions" within the CloudFormation registry or with the following * CLI commmand: aws cloudformation describe-type --type-name * "AWS::S3::Bucket" --type RESOURCE.

For more information, see Managing * extensions through the CloudFormation registry and Amazon * Web Services resource and property types reference in the CloudFormation * User Guide.

*/ inline ResourceDetails& WithResourceConfigurationSchemaType(ResourceConfigurationSchemaType&& value) { SetResourceConfigurationSchemaType(std::move(value)); return *this;} private: Aws::String m_resourceId; bool m_resourceIdHasBeenSet = false; Aws::String m_resourceType; bool m_resourceTypeHasBeenSet = false; Aws::String m_resourceConfiguration; bool m_resourceConfigurationHasBeenSet = false; ResourceConfigurationSchemaType m_resourceConfigurationSchemaType; bool m_resourceConfigurationSchemaTypeHasBeenSet = false; }; } // namespace Model } // namespace ConfigService } // namespace Aws