/** * 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 Resource { public: AWS_APPREGISTRY_API Resource(); AWS_APPREGISTRY_API Resource(Aws::Utils::Json::JsonView jsonValue); AWS_APPREGISTRY_API Resource& 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 Resource& WithName(const Aws::String& value) { SetName(value); return *this;} /** *

The name of the resource.

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

The name of the resource.

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

The Amazon resource name (ARN) of the resource.

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

The Amazon resource name (ARN) of the resource.

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

The Amazon resource name (ARN) of the resource.

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

The Amazon resource name (ARN) of the resource.

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

The Amazon resource name (ARN) of the resource.

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

The Amazon resource name (ARN) of the resource.

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

The Amazon resource name (ARN) of the resource.

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

The Amazon resource name (ARN) of the resource.

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

The time the resource was associated with the application.

*/ inline const Aws::Utils::DateTime& GetAssociationTime() const{ return m_associationTime; } /** *

The time the resource was associated with the application.

*/ inline bool AssociationTimeHasBeenSet() const { return m_associationTimeHasBeenSet; } /** *

The time the resource was associated with the application.

*/ inline void SetAssociationTime(const Aws::Utils::DateTime& value) { m_associationTimeHasBeenSet = true; m_associationTime = value; } /** *

The time the resource was associated with the application.

*/ inline void SetAssociationTime(Aws::Utils::DateTime&& value) { m_associationTimeHasBeenSet = true; m_associationTime = std::move(value); } /** *

The time the resource was associated with the application.

*/ inline Resource& WithAssociationTime(const Aws::Utils::DateTime& value) { SetAssociationTime(value); return *this;} /** *

The time the resource was associated with the application.

*/ inline Resource& WithAssociationTime(Aws::Utils::DateTime&& value) { SetAssociationTime(std::move(value)); return *this;} /** *

The service integration information about the resource.

*/ inline const ResourceIntegrations& GetIntegrations() const{ return m_integrations; } /** *

The service integration information about the resource.

*/ inline bool IntegrationsHasBeenSet() const { return m_integrationsHasBeenSet; } /** *

The service integration information about the resource.

*/ inline void SetIntegrations(const ResourceIntegrations& value) { m_integrationsHasBeenSet = true; m_integrations = value; } /** *

The service integration information about the resource.

*/ inline void SetIntegrations(ResourceIntegrations&& value) { m_integrationsHasBeenSet = true; m_integrations = std::move(value); } /** *

The service integration information about the resource.

*/ inline Resource& WithIntegrations(const ResourceIntegrations& value) { SetIntegrations(value); return *this;} /** *

The service integration information about the resource.

*/ inline Resource& WithIntegrations(ResourceIntegrations&& value) { SetIntegrations(std::move(value)); return *this;} private: Aws::String m_name; bool m_nameHasBeenSet = false; Aws::String m_arn; bool m_arnHasBeenSet = false; Aws::Utils::DateTime m_associationTime; bool m_associationTimeHasBeenSet = false; ResourceIntegrations m_integrations; bool m_integrationsHasBeenSet = false; }; } // namespace Model } // namespace AppRegistry } // namespace Aws