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

Information required to remotely connect to a fleet instance.

See * Also:

AWS * API Reference

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

A unique identifier for the fleet containing the instance being accessed.

*/ inline const Aws::String& GetFleetId() const{ return m_fleetId; } /** *

A unique identifier for the fleet containing the instance being accessed.

*/ inline bool FleetIdHasBeenSet() const { return m_fleetIdHasBeenSet; } /** *

A unique identifier for the fleet containing the instance being accessed.

*/ inline void SetFleetId(const Aws::String& value) { m_fleetIdHasBeenSet = true; m_fleetId = value; } /** *

A unique identifier for the fleet containing the instance being accessed.

*/ inline void SetFleetId(Aws::String&& value) { m_fleetIdHasBeenSet = true; m_fleetId = std::move(value); } /** *

A unique identifier for the fleet containing the instance being accessed.

*/ inline void SetFleetId(const char* value) { m_fleetIdHasBeenSet = true; m_fleetId.assign(value); } /** *

A unique identifier for the fleet containing the instance being accessed.

*/ inline InstanceAccess& WithFleetId(const Aws::String& value) { SetFleetId(value); return *this;} /** *

A unique identifier for the fleet containing the instance being accessed.

*/ inline InstanceAccess& WithFleetId(Aws::String&& value) { SetFleetId(std::move(value)); return *this;} /** *

A unique identifier for the fleet containing the instance being accessed.

*/ inline InstanceAccess& WithFleetId(const char* value) { SetFleetId(value); return *this;} /** *

A unique identifier for the instance being accessed.

*/ inline const Aws::String& GetInstanceId() const{ return m_instanceId; } /** *

A unique identifier for the instance being accessed.

*/ inline bool InstanceIdHasBeenSet() const { return m_instanceIdHasBeenSet; } /** *

A unique identifier for the instance being accessed.

*/ inline void SetInstanceId(const Aws::String& value) { m_instanceIdHasBeenSet = true; m_instanceId = value; } /** *

A unique identifier for the instance being accessed.

*/ inline void SetInstanceId(Aws::String&& value) { m_instanceIdHasBeenSet = true; m_instanceId = std::move(value); } /** *

A unique identifier for the instance being accessed.

*/ inline void SetInstanceId(const char* value) { m_instanceIdHasBeenSet = true; m_instanceId.assign(value); } /** *

A unique identifier for the instance being accessed.

*/ inline InstanceAccess& WithInstanceId(const Aws::String& value) { SetInstanceId(value); return *this;} /** *

A unique identifier for the instance being accessed.

*/ inline InstanceAccess& WithInstanceId(Aws::String&& value) { SetInstanceId(std::move(value)); return *this;} /** *

A unique identifier for the instance being accessed.

*/ inline InstanceAccess& WithInstanceId(const char* value) { SetInstanceId(value); return *this;} /** *

IP address that is assigned to the instance.

*/ inline const Aws::String& GetIpAddress() const{ return m_ipAddress; } /** *

IP address that is assigned to the instance.

*/ inline bool IpAddressHasBeenSet() const { return m_ipAddressHasBeenSet; } /** *

IP address that is assigned to the instance.

*/ inline void SetIpAddress(const Aws::String& value) { m_ipAddressHasBeenSet = true; m_ipAddress = value; } /** *

IP address that is assigned to the instance.

*/ inline void SetIpAddress(Aws::String&& value) { m_ipAddressHasBeenSet = true; m_ipAddress = std::move(value); } /** *

IP address that is assigned to the instance.

*/ inline void SetIpAddress(const char* value) { m_ipAddressHasBeenSet = true; m_ipAddress.assign(value); } /** *

IP address that is assigned to the instance.

*/ inline InstanceAccess& WithIpAddress(const Aws::String& value) { SetIpAddress(value); return *this;} /** *

IP address that is assigned to the instance.

*/ inline InstanceAccess& WithIpAddress(Aws::String&& value) { SetIpAddress(std::move(value)); return *this;} /** *

IP address that is assigned to the instance.

*/ inline InstanceAccess& WithIpAddress(const char* value) { SetIpAddress(value); return *this;} /** *

Operating system that is running on the instance.

*/ inline const OperatingSystem& GetOperatingSystem() const{ return m_operatingSystem; } /** *

Operating system that is running on the instance.

*/ inline bool OperatingSystemHasBeenSet() const { return m_operatingSystemHasBeenSet; } /** *

Operating system that is running on the instance.

*/ inline void SetOperatingSystem(const OperatingSystem& value) { m_operatingSystemHasBeenSet = true; m_operatingSystem = value; } /** *

Operating system that is running on the instance.

*/ inline void SetOperatingSystem(OperatingSystem&& value) { m_operatingSystemHasBeenSet = true; m_operatingSystem = std::move(value); } /** *

Operating system that is running on the instance.

*/ inline InstanceAccess& WithOperatingSystem(const OperatingSystem& value) { SetOperatingSystem(value); return *this;} /** *

Operating system that is running on the instance.

*/ inline InstanceAccess& WithOperatingSystem(OperatingSystem&& value) { SetOperatingSystem(std::move(value)); return *this;} /** *

Credentials required to access the instance.

*/ inline const InstanceCredentials& GetCredentials() const{ return m_credentials; } /** *

Credentials required to access the instance.

*/ inline bool CredentialsHasBeenSet() const { return m_credentialsHasBeenSet; } /** *

Credentials required to access the instance.

*/ inline void SetCredentials(const InstanceCredentials& value) { m_credentialsHasBeenSet = true; m_credentials = value; } /** *

Credentials required to access the instance.

*/ inline void SetCredentials(InstanceCredentials&& value) { m_credentialsHasBeenSet = true; m_credentials = std::move(value); } /** *

Credentials required to access the instance.

*/ inline InstanceAccess& WithCredentials(const InstanceCredentials& value) { SetCredentials(value); return *this;} /** *

Credentials required to access the instance.

*/ inline InstanceAccess& WithCredentials(InstanceCredentials&& value) { SetCredentials(std::move(value)); return *this;} private: Aws::String m_fleetId; bool m_fleetIdHasBeenSet = false; Aws::String m_instanceId; bool m_instanceIdHasBeenSet = false; Aws::String m_ipAddress; bool m_ipAddressHasBeenSet = false; OperatingSystem m_operatingSystem; bool m_operatingSystemHasBeenSet = false; InstanceCredentials m_credentials; bool m_credentialsHasBeenSet = false; }; } // namespace Model } // namespace GameLift } // namespace Aws