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

Information about a network function.

A network instance is a single * network created in Amazon Web Services TNB that can be deployed and on which * life-cycle operations (like terminate, update, and delete) can be * performed.

See Also:

AWS * API Reference

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

State of the network function.

*/ inline const VnfOperationalState& GetVnfState() const{ return m_vnfState; } /** *

State of the network function.

*/ inline bool VnfStateHasBeenSet() const { return m_vnfStateHasBeenSet; } /** *

State of the network function.

*/ inline void SetVnfState(const VnfOperationalState& value) { m_vnfStateHasBeenSet = true; m_vnfState = value; } /** *

State of the network function.

*/ inline void SetVnfState(VnfOperationalState&& value) { m_vnfStateHasBeenSet = true; m_vnfState = std::move(value); } /** *

State of the network function.

*/ inline GetSolInstantiatedVnfInfo& WithVnfState(const VnfOperationalState& value) { SetVnfState(value); return *this;} /** *

State of the network function.

*/ inline GetSolInstantiatedVnfInfo& WithVnfState(VnfOperationalState&& value) { SetVnfState(std::move(value)); return *this;} private: VnfOperationalState m_vnfState; bool m_vnfStateHasBeenSet = false; }; } // namespace Model } // namespace tnb } // namespace Aws