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

A static IP configuration.

See Also:

AWS * API Reference

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

The connection's default gateway.

*/ inline const Aws::String& GetDefaultGateway() const{ return m_defaultGateway; } /** *

The connection's default gateway.

*/ inline bool DefaultGatewayHasBeenSet() const { return m_defaultGatewayHasBeenSet; } /** *

The connection's default gateway.

*/ inline void SetDefaultGateway(const Aws::String& value) { m_defaultGatewayHasBeenSet = true; m_defaultGateway = value; } /** *

The connection's default gateway.

*/ inline void SetDefaultGateway(Aws::String&& value) { m_defaultGatewayHasBeenSet = true; m_defaultGateway = std::move(value); } /** *

The connection's default gateway.

*/ inline void SetDefaultGateway(const char* value) { m_defaultGatewayHasBeenSet = true; m_defaultGateway.assign(value); } /** *

The connection's default gateway.

*/ inline StaticIpConnectionInfo& WithDefaultGateway(const Aws::String& value) { SetDefaultGateway(value); return *this;} /** *

The connection's default gateway.

*/ inline StaticIpConnectionInfo& WithDefaultGateway(Aws::String&& value) { SetDefaultGateway(std::move(value)); return *this;} /** *

The connection's default gateway.

*/ inline StaticIpConnectionInfo& WithDefaultGateway(const char* value) { SetDefaultGateway(value); return *this;} /** *

The connection's DNS address.

*/ inline const Aws::Vector& GetDns() const{ return m_dns; } /** *

The connection's DNS address.

*/ inline bool DnsHasBeenSet() const { return m_dnsHasBeenSet; } /** *

The connection's DNS address.

*/ inline void SetDns(const Aws::Vector& value) { m_dnsHasBeenSet = true; m_dns = value; } /** *

The connection's DNS address.

*/ inline void SetDns(Aws::Vector&& value) { m_dnsHasBeenSet = true; m_dns = std::move(value); } /** *

The connection's DNS address.

*/ inline StaticIpConnectionInfo& WithDns(const Aws::Vector& value) { SetDns(value); return *this;} /** *

The connection's DNS address.

*/ inline StaticIpConnectionInfo& WithDns(Aws::Vector&& value) { SetDns(std::move(value)); return *this;} /** *

The connection's DNS address.

*/ inline StaticIpConnectionInfo& AddDns(const Aws::String& value) { m_dnsHasBeenSet = true; m_dns.push_back(value); return *this; } /** *

The connection's DNS address.

*/ inline StaticIpConnectionInfo& AddDns(Aws::String&& value) { m_dnsHasBeenSet = true; m_dns.push_back(std::move(value)); return *this; } /** *

The connection's DNS address.

*/ inline StaticIpConnectionInfo& AddDns(const char* value) { m_dnsHasBeenSet = true; m_dns.push_back(value); return *this; } /** *

The connection's IP address.

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

The connection's IP address.

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

The connection's IP address.

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

The connection's IP address.

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

The connection's IP address.

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

The connection's IP address.

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

The connection's IP address.

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

The connection's IP address.

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

The connection's DNS mask.

*/ inline const Aws::String& GetMask() const{ return m_mask; } /** *

The connection's DNS mask.

*/ inline bool MaskHasBeenSet() const { return m_maskHasBeenSet; } /** *

The connection's DNS mask.

*/ inline void SetMask(const Aws::String& value) { m_maskHasBeenSet = true; m_mask = value; } /** *

The connection's DNS mask.

*/ inline void SetMask(Aws::String&& value) { m_maskHasBeenSet = true; m_mask = std::move(value); } /** *

The connection's DNS mask.

*/ inline void SetMask(const char* value) { m_maskHasBeenSet = true; m_mask.assign(value); } /** *

The connection's DNS mask.

*/ inline StaticIpConnectionInfo& WithMask(const Aws::String& value) { SetMask(value); return *this;} /** *

The connection's DNS mask.

*/ inline StaticIpConnectionInfo& WithMask(Aws::String&& value) { SetMask(std::move(value)); return *this;} /** *

The connection's DNS mask.

*/ inline StaticIpConnectionInfo& WithMask(const char* value) { SetMask(value); return *this;} private: Aws::String m_defaultGateway; bool m_defaultGatewayHasBeenSet = false; Aws::Vector m_dns; bool m_dnsHasBeenSet = false; Aws::String m_ipAddress; bool m_ipAddressHasBeenSet = false; Aws::String m_mask; bool m_maskHasBeenSet = false; }; } // namespace Model } // namespace Panorama } // namespace Aws