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

Represents a VM server.

See Also:

AWS API * Reference

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

The VM server location.

*/ inline const VmServerAddress& GetVmServerAddress() const{ return m_vmServerAddress; } /** *

The VM server location.

*/ inline bool VmServerAddressHasBeenSet() const { return m_vmServerAddressHasBeenSet; } /** *

The VM server location.

*/ inline void SetVmServerAddress(const VmServerAddress& value) { m_vmServerAddressHasBeenSet = true; m_vmServerAddress = value; } /** *

The VM server location.

*/ inline void SetVmServerAddress(VmServerAddress&& value) { m_vmServerAddressHasBeenSet = true; m_vmServerAddress = std::move(value); } /** *

The VM server location.

*/ inline VmServer& WithVmServerAddress(const VmServerAddress& value) { SetVmServerAddress(value); return *this;} /** *

The VM server location.

*/ inline VmServer& WithVmServerAddress(VmServerAddress&& value) { SetVmServerAddress(std::move(value)); return *this;} /** *

The name of the VM.

*/ inline const Aws::String& GetVmName() const{ return m_vmName; } /** *

The name of the VM.

*/ inline bool VmNameHasBeenSet() const { return m_vmNameHasBeenSet; } /** *

The name of the VM.

*/ inline void SetVmName(const Aws::String& value) { m_vmNameHasBeenSet = true; m_vmName = value; } /** *

The name of the VM.

*/ inline void SetVmName(Aws::String&& value) { m_vmNameHasBeenSet = true; m_vmName = std::move(value); } /** *

The name of the VM.

*/ inline void SetVmName(const char* value) { m_vmNameHasBeenSet = true; m_vmName.assign(value); } /** *

The name of the VM.

*/ inline VmServer& WithVmName(const Aws::String& value) { SetVmName(value); return *this;} /** *

The name of the VM.

*/ inline VmServer& WithVmName(Aws::String&& value) { SetVmName(std::move(value)); return *this;} /** *

The name of the VM.

*/ inline VmServer& WithVmName(const char* value) { SetVmName(value); return *this;} /** *

The name of the VM manager.

*/ inline const Aws::String& GetVmManagerName() const{ return m_vmManagerName; } /** *

The name of the VM manager.

*/ inline bool VmManagerNameHasBeenSet() const { return m_vmManagerNameHasBeenSet; } /** *

The name of the VM manager.

*/ inline void SetVmManagerName(const Aws::String& value) { m_vmManagerNameHasBeenSet = true; m_vmManagerName = value; } /** *

The name of the VM manager.

*/ inline void SetVmManagerName(Aws::String&& value) { m_vmManagerNameHasBeenSet = true; m_vmManagerName = std::move(value); } /** *

The name of the VM manager.

*/ inline void SetVmManagerName(const char* value) { m_vmManagerNameHasBeenSet = true; m_vmManagerName.assign(value); } /** *

The name of the VM manager.

*/ inline VmServer& WithVmManagerName(const Aws::String& value) { SetVmManagerName(value); return *this;} /** *

The name of the VM manager.

*/ inline VmServer& WithVmManagerName(Aws::String&& value) { SetVmManagerName(std::move(value)); return *this;} /** *

The name of the VM manager.

*/ inline VmServer& WithVmManagerName(const char* value) { SetVmManagerName(value); return *this;} /** *

The type of VM management product.

*/ inline const VmManagerType& GetVmManagerType() const{ return m_vmManagerType; } /** *

The type of VM management product.

*/ inline bool VmManagerTypeHasBeenSet() const { return m_vmManagerTypeHasBeenSet; } /** *

The type of VM management product.

*/ inline void SetVmManagerType(const VmManagerType& value) { m_vmManagerTypeHasBeenSet = true; m_vmManagerType = value; } /** *

The type of VM management product.

*/ inline void SetVmManagerType(VmManagerType&& value) { m_vmManagerTypeHasBeenSet = true; m_vmManagerType = std::move(value); } /** *

The type of VM management product.

*/ inline VmServer& WithVmManagerType(const VmManagerType& value) { SetVmManagerType(value); return *this;} /** *

The type of VM management product.

*/ inline VmServer& WithVmManagerType(VmManagerType&& value) { SetVmManagerType(std::move(value)); return *this;} /** *

The VM folder path in the vCenter Server virtual machine inventory tree.

*/ inline const Aws::String& GetVmPath() const{ return m_vmPath; } /** *

The VM folder path in the vCenter Server virtual machine inventory tree.

*/ inline bool VmPathHasBeenSet() const { return m_vmPathHasBeenSet; } /** *

The VM folder path in the vCenter Server virtual machine inventory tree.

*/ inline void SetVmPath(const Aws::String& value) { m_vmPathHasBeenSet = true; m_vmPath = value; } /** *

The VM folder path in the vCenter Server virtual machine inventory tree.

*/ inline void SetVmPath(Aws::String&& value) { m_vmPathHasBeenSet = true; m_vmPath = std::move(value); } /** *

The VM folder path in the vCenter Server virtual machine inventory tree.

*/ inline void SetVmPath(const char* value) { m_vmPathHasBeenSet = true; m_vmPath.assign(value); } /** *

The VM folder path in the vCenter Server virtual machine inventory tree.

*/ inline VmServer& WithVmPath(const Aws::String& value) { SetVmPath(value); return *this;} /** *

The VM folder path in the vCenter Server virtual machine inventory tree.

*/ inline VmServer& WithVmPath(Aws::String&& value) { SetVmPath(std::move(value)); return *this;} /** *

The VM folder path in the vCenter Server virtual machine inventory tree.

*/ inline VmServer& WithVmPath(const char* value) { SetVmPath(value); return *this;} private: VmServerAddress m_vmServerAddress; bool m_vmServerAddressHasBeenSet = false; Aws::String m_vmName; bool m_vmNameHasBeenSet = false; Aws::String m_vmManagerName; bool m_vmManagerNameHasBeenSet = false; VmManagerType m_vmManagerType; bool m_vmManagerTypeHasBeenSet = false; Aws::String m_vmPath; bool m_vmPathHasBeenSet = false; }; } // namespace Model } // namespace SMS } // namespace Aws