/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include #include namespace Aws { template class AmazonWebServiceResult; namespace Utils { namespace Json { class JsonValue; } // namespace Json } // namespace Utils namespace tnb { namespace Model { class GetSolFunctionInstanceResult { public: AWS_TNB_API GetSolFunctionInstanceResult(); AWS_TNB_API GetSolFunctionInstanceResult(const Aws::AmazonWebServiceResult& result); AWS_TNB_API GetSolFunctionInstanceResult& operator=(const Aws::AmazonWebServiceResult& result); /** *

Network function instance ARN.

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

Network function instance ARN.

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

Network function instance ARN.

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

Network function instance ARN.

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

Network function instance ARN.

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

Network function instance ARN.

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

Network function instance ARN.

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

Network function instance ID.

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

Network function instance ID.

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

Network function instance ID.

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

Network function instance ID.

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

Network function instance ID.

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

Network function instance ID.

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

Network function instance ID.

*/ inline GetSolFunctionInstanceResult& WithId(const char* value) { SetId(value); return *this;} inline const GetSolVnfInfo& GetInstantiatedVnfInfo() const{ return m_instantiatedVnfInfo; } inline void SetInstantiatedVnfInfo(const GetSolVnfInfo& value) { m_instantiatedVnfInfo = value; } inline void SetInstantiatedVnfInfo(GetSolVnfInfo&& value) { m_instantiatedVnfInfo = std::move(value); } inline GetSolFunctionInstanceResult& WithInstantiatedVnfInfo(const GetSolVnfInfo& value) { SetInstantiatedVnfInfo(value); return *this;} inline GetSolFunctionInstanceResult& WithInstantiatedVnfInfo(GetSolVnfInfo&& value) { SetInstantiatedVnfInfo(std::move(value)); return *this;} /** *

Network function instantiation state.

*/ inline const VnfInstantiationState& GetInstantiationState() const{ return m_instantiationState; } /** *

Network function instantiation state.

*/ inline void SetInstantiationState(const VnfInstantiationState& value) { m_instantiationState = value; } /** *

Network function instantiation state.

*/ inline void SetInstantiationState(VnfInstantiationState&& value) { m_instantiationState = std::move(value); } /** *

Network function instantiation state.

*/ inline GetSolFunctionInstanceResult& WithInstantiationState(const VnfInstantiationState& value) { SetInstantiationState(value); return *this;} /** *

Network function instantiation state.

*/ inline GetSolFunctionInstanceResult& WithInstantiationState(VnfInstantiationState&& value) { SetInstantiationState(std::move(value)); return *this;} inline const GetSolFunctionInstanceMetadata& GetMetadata() const{ return m_metadata; } inline void SetMetadata(const GetSolFunctionInstanceMetadata& value) { m_metadata = value; } inline void SetMetadata(GetSolFunctionInstanceMetadata&& value) { m_metadata = std::move(value); } inline GetSolFunctionInstanceResult& WithMetadata(const GetSolFunctionInstanceMetadata& value) { SetMetadata(value); return *this;} inline GetSolFunctionInstanceResult& WithMetadata(GetSolFunctionInstanceMetadata&& value) { SetMetadata(std::move(value)); return *this;} /** *

Network instance ID.

*/ inline const Aws::String& GetNsInstanceId() const{ return m_nsInstanceId; } /** *

Network instance ID.

*/ inline void SetNsInstanceId(const Aws::String& value) { m_nsInstanceId = value; } /** *

Network instance ID.

*/ inline void SetNsInstanceId(Aws::String&& value) { m_nsInstanceId = std::move(value); } /** *

Network instance ID.

*/ inline void SetNsInstanceId(const char* value) { m_nsInstanceId.assign(value); } /** *

Network instance ID.

*/ inline GetSolFunctionInstanceResult& WithNsInstanceId(const Aws::String& value) { SetNsInstanceId(value); return *this;} /** *

Network instance ID.

*/ inline GetSolFunctionInstanceResult& WithNsInstanceId(Aws::String&& value) { SetNsInstanceId(std::move(value)); return *this;} /** *

Network instance ID.

*/ inline GetSolFunctionInstanceResult& WithNsInstanceId(const char* value) { SetNsInstanceId(value); return *this;} /** *

A tag is a label that you assign to an Amazon Web Services resource. Each tag * consists of a key and an optional value. You can use tags to search and filter * your resources or track your Amazon Web Services costs.

*/ inline const Aws::Map& GetTags() const{ return m_tags; } /** *

A tag is a label that you assign to an Amazon Web Services resource. Each tag * consists of a key and an optional value. You can use tags to search and filter * your resources or track your Amazon Web Services costs.

*/ inline void SetTags(const Aws::Map& value) { m_tags = value; } /** *

A tag is a label that you assign to an Amazon Web Services resource. Each tag * consists of a key and an optional value. You can use tags to search and filter * your resources or track your Amazon Web Services costs.

*/ inline void SetTags(Aws::Map&& value) { m_tags = std::move(value); } /** *

A tag is a label that you assign to an Amazon Web Services resource. Each tag * consists of a key and an optional value. You can use tags to search and filter * your resources or track your Amazon Web Services costs.

*/ inline GetSolFunctionInstanceResult& WithTags(const Aws::Map& value) { SetTags(value); return *this;} /** *

A tag is a label that you assign to an Amazon Web Services resource. Each tag * consists of a key and an optional value. You can use tags to search and filter * your resources or track your Amazon Web Services costs.

*/ inline GetSolFunctionInstanceResult& WithTags(Aws::Map&& value) { SetTags(std::move(value)); return *this;} /** *

A tag is a label that you assign to an Amazon Web Services resource. Each tag * consists of a key and an optional value. You can use tags to search and filter * your resources or track your Amazon Web Services costs.

*/ inline GetSolFunctionInstanceResult& AddTags(const Aws::String& key, const Aws::String& value) { m_tags.emplace(key, value); return *this; } /** *

A tag is a label that you assign to an Amazon Web Services resource. Each tag * consists of a key and an optional value. You can use tags to search and filter * your resources or track your Amazon Web Services costs.

*/ inline GetSolFunctionInstanceResult& AddTags(Aws::String&& key, const Aws::String& value) { m_tags.emplace(std::move(key), value); return *this; } /** *

A tag is a label that you assign to an Amazon Web Services resource. Each tag * consists of a key and an optional value. You can use tags to search and filter * your resources or track your Amazon Web Services costs.

*/ inline GetSolFunctionInstanceResult& AddTags(const Aws::String& key, Aws::String&& value) { m_tags.emplace(key, std::move(value)); return *this; } /** *

A tag is a label that you assign to an Amazon Web Services resource. Each tag * consists of a key and an optional value. You can use tags to search and filter * your resources or track your Amazon Web Services costs.

*/ inline GetSolFunctionInstanceResult& AddTags(Aws::String&& key, Aws::String&& value) { m_tags.emplace(std::move(key), std::move(value)); return *this; } /** *

A tag is a label that you assign to an Amazon Web Services resource. Each tag * consists of a key and an optional value. You can use tags to search and filter * your resources or track your Amazon Web Services costs.

*/ inline GetSolFunctionInstanceResult& AddTags(const char* key, Aws::String&& value) { m_tags.emplace(key, std::move(value)); return *this; } /** *

A tag is a label that you assign to an Amazon Web Services resource. Each tag * consists of a key and an optional value. You can use tags to search and filter * your resources or track your Amazon Web Services costs.

*/ inline GetSolFunctionInstanceResult& AddTags(Aws::String&& key, const char* value) { m_tags.emplace(std::move(key), value); return *this; } /** *

A tag is a label that you assign to an Amazon Web Services resource. Each tag * consists of a key and an optional value. You can use tags to search and filter * your resources or track your Amazon Web Services costs.

*/ inline GetSolFunctionInstanceResult& AddTags(const char* key, const char* value) { m_tags.emplace(key, value); return *this; } /** *

Function package ID.

*/ inline const Aws::String& GetVnfPkgId() const{ return m_vnfPkgId; } /** *

Function package ID.

*/ inline void SetVnfPkgId(const Aws::String& value) { m_vnfPkgId = value; } /** *

Function package ID.

*/ inline void SetVnfPkgId(Aws::String&& value) { m_vnfPkgId = std::move(value); } /** *

Function package ID.

*/ inline void SetVnfPkgId(const char* value) { m_vnfPkgId.assign(value); } /** *

Function package ID.

*/ inline GetSolFunctionInstanceResult& WithVnfPkgId(const Aws::String& value) { SetVnfPkgId(value); return *this;} /** *

Function package ID.

*/ inline GetSolFunctionInstanceResult& WithVnfPkgId(Aws::String&& value) { SetVnfPkgId(std::move(value)); return *this;} /** *

Function package ID.

*/ inline GetSolFunctionInstanceResult& WithVnfPkgId(const char* value) { SetVnfPkgId(value); return *this;} /** *

Network function product name.

*/ inline const Aws::String& GetVnfProductName() const{ return m_vnfProductName; } /** *

Network function product name.

*/ inline void SetVnfProductName(const Aws::String& value) { m_vnfProductName = value; } /** *

Network function product name.

*/ inline void SetVnfProductName(Aws::String&& value) { m_vnfProductName = std::move(value); } /** *

Network function product name.

*/ inline void SetVnfProductName(const char* value) { m_vnfProductName.assign(value); } /** *

Network function product name.

*/ inline GetSolFunctionInstanceResult& WithVnfProductName(const Aws::String& value) { SetVnfProductName(value); return *this;} /** *

Network function product name.

*/ inline GetSolFunctionInstanceResult& WithVnfProductName(Aws::String&& value) { SetVnfProductName(std::move(value)); return *this;} /** *

Network function product name.

*/ inline GetSolFunctionInstanceResult& WithVnfProductName(const char* value) { SetVnfProductName(value); return *this;} /** *

Network function provider.

*/ inline const Aws::String& GetVnfProvider() const{ return m_vnfProvider; } /** *

Network function provider.

*/ inline void SetVnfProvider(const Aws::String& value) { m_vnfProvider = value; } /** *

Network function provider.

*/ inline void SetVnfProvider(Aws::String&& value) { m_vnfProvider = std::move(value); } /** *

Network function provider.

*/ inline void SetVnfProvider(const char* value) { m_vnfProvider.assign(value); } /** *

Network function provider.

*/ inline GetSolFunctionInstanceResult& WithVnfProvider(const Aws::String& value) { SetVnfProvider(value); return *this;} /** *

Network function provider.

*/ inline GetSolFunctionInstanceResult& WithVnfProvider(Aws::String&& value) { SetVnfProvider(std::move(value)); return *this;} /** *

Network function provider.

*/ inline GetSolFunctionInstanceResult& WithVnfProvider(const char* value) { SetVnfProvider(value); return *this;} /** *

Function package descriptor ID.

*/ inline const Aws::String& GetVnfdId() const{ return m_vnfdId; } /** *

Function package descriptor ID.

*/ inline void SetVnfdId(const Aws::String& value) { m_vnfdId = value; } /** *

Function package descriptor ID.

*/ inline void SetVnfdId(Aws::String&& value) { m_vnfdId = std::move(value); } /** *

Function package descriptor ID.

*/ inline void SetVnfdId(const char* value) { m_vnfdId.assign(value); } /** *

Function package descriptor ID.

*/ inline GetSolFunctionInstanceResult& WithVnfdId(const Aws::String& value) { SetVnfdId(value); return *this;} /** *

Function package descriptor ID.

*/ inline GetSolFunctionInstanceResult& WithVnfdId(Aws::String&& value) { SetVnfdId(std::move(value)); return *this;} /** *

Function package descriptor ID.

*/ inline GetSolFunctionInstanceResult& WithVnfdId(const char* value) { SetVnfdId(value); return *this;} /** *

Function package descriptor version.

*/ inline const Aws::String& GetVnfdVersion() const{ return m_vnfdVersion; } /** *

Function package descriptor version.

*/ inline void SetVnfdVersion(const Aws::String& value) { m_vnfdVersion = value; } /** *

Function package descriptor version.

*/ inline void SetVnfdVersion(Aws::String&& value) { m_vnfdVersion = std::move(value); } /** *

Function package descriptor version.

*/ inline void SetVnfdVersion(const char* value) { m_vnfdVersion.assign(value); } /** *

Function package descriptor version.

*/ inline GetSolFunctionInstanceResult& WithVnfdVersion(const Aws::String& value) { SetVnfdVersion(value); return *this;} /** *

Function package descriptor version.

*/ inline GetSolFunctionInstanceResult& WithVnfdVersion(Aws::String&& value) { SetVnfdVersion(std::move(value)); return *this;} /** *

Function package descriptor version.

*/ inline GetSolFunctionInstanceResult& WithVnfdVersion(const char* value) { SetVnfdVersion(value); return *this;} inline const Aws::String& GetRequestId() const{ return m_requestId; } inline void SetRequestId(const Aws::String& value) { m_requestId = value; } inline void SetRequestId(Aws::String&& value) { m_requestId = std::move(value); } inline void SetRequestId(const char* value) { m_requestId.assign(value); } inline GetSolFunctionInstanceResult& WithRequestId(const Aws::String& value) { SetRequestId(value); return *this;} inline GetSolFunctionInstanceResult& WithRequestId(Aws::String&& value) { SetRequestId(std::move(value)); return *this;} inline GetSolFunctionInstanceResult& WithRequestId(const char* value) { SetRequestId(value); return *this;} private: Aws::String m_arn; Aws::String m_id; GetSolVnfInfo m_instantiatedVnfInfo; VnfInstantiationState m_instantiationState; GetSolFunctionInstanceMetadata m_metadata; Aws::String m_nsInstanceId; Aws::Map m_tags; Aws::String m_vnfPkgId; Aws::String m_vnfProductName; Aws::String m_vnfProvider; Aws::String m_vnfdId; Aws::String m_vnfdVersion; Aws::String m_requestId; }; } // namespace Model } // namespace tnb } // namespace Aws