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

Contains information about an endpoint and port where client devices can * connect to an MQTT broker on a Greengrass core device.

See Also:

* AWS * API Reference

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

An ID for the connectivity information.

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

An ID for the connectivity information.

*/ inline bool IdHasBeenSet() const { return m_idHasBeenSet; } /** *

An ID for the connectivity information.

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

An ID for the connectivity information.

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

An ID for the connectivity information.

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

An ID for the connectivity information.

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

An ID for the connectivity information.

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

An ID for the connectivity information.

*/ inline ConnectivityInfo& WithId(const char* value) { SetId(value); return *this;} /** *

The IP address or DNS address where client devices can connect to an MQTT * broker on the Greengrass core device.

*/ inline const Aws::String& GetHostAddress() const{ return m_hostAddress; } /** *

The IP address or DNS address where client devices can connect to an MQTT * broker on the Greengrass core device.

*/ inline bool HostAddressHasBeenSet() const { return m_hostAddressHasBeenSet; } /** *

The IP address or DNS address where client devices can connect to an MQTT * broker on the Greengrass core device.

*/ inline void SetHostAddress(const Aws::String& value) { m_hostAddressHasBeenSet = true; m_hostAddress = value; } /** *

The IP address or DNS address where client devices can connect to an MQTT * broker on the Greengrass core device.

*/ inline void SetHostAddress(Aws::String&& value) { m_hostAddressHasBeenSet = true; m_hostAddress = std::move(value); } /** *

The IP address or DNS address where client devices can connect to an MQTT * broker on the Greengrass core device.

*/ inline void SetHostAddress(const char* value) { m_hostAddressHasBeenSet = true; m_hostAddress.assign(value); } /** *

The IP address or DNS address where client devices can connect to an MQTT * broker on the Greengrass core device.

*/ inline ConnectivityInfo& WithHostAddress(const Aws::String& value) { SetHostAddress(value); return *this;} /** *

The IP address or DNS address where client devices can connect to an MQTT * broker on the Greengrass core device.

*/ inline ConnectivityInfo& WithHostAddress(Aws::String&& value) { SetHostAddress(std::move(value)); return *this;} /** *

The IP address or DNS address where client devices can connect to an MQTT * broker on the Greengrass core device.

*/ inline ConnectivityInfo& WithHostAddress(const char* value) { SetHostAddress(value); return *this;} /** *

The port where the MQTT broker operates on the core device. This port is * typically 8883, which is the default port for the MQTT broker component that * runs on core devices.

*/ inline int GetPortNumber() const{ return m_portNumber; } /** *

The port where the MQTT broker operates on the core device. This port is * typically 8883, which is the default port for the MQTT broker component that * runs on core devices.

*/ inline bool PortNumberHasBeenSet() const { return m_portNumberHasBeenSet; } /** *

The port where the MQTT broker operates on the core device. This port is * typically 8883, which is the default port for the MQTT broker component that * runs on core devices.

*/ inline void SetPortNumber(int value) { m_portNumberHasBeenSet = true; m_portNumber = value; } /** *

The port where the MQTT broker operates on the core device. This port is * typically 8883, which is the default port for the MQTT broker component that * runs on core devices.

*/ inline ConnectivityInfo& WithPortNumber(int value) { SetPortNumber(value); return *this;} /** *

Additional metadata to provide to client devices that connect to this core * device.

*/ inline const Aws::String& GetMetadata() const{ return m_metadata; } /** *

Additional metadata to provide to client devices that connect to this core * device.

*/ inline bool MetadataHasBeenSet() const { return m_metadataHasBeenSet; } /** *

Additional metadata to provide to client devices that connect to this core * device.

*/ inline void SetMetadata(const Aws::String& value) { m_metadataHasBeenSet = true; m_metadata = value; } /** *

Additional metadata to provide to client devices that connect to this core * device.

*/ inline void SetMetadata(Aws::String&& value) { m_metadataHasBeenSet = true; m_metadata = std::move(value); } /** *

Additional metadata to provide to client devices that connect to this core * device.

*/ inline void SetMetadata(const char* value) { m_metadataHasBeenSet = true; m_metadata.assign(value); } /** *

Additional metadata to provide to client devices that connect to this core * device.

*/ inline ConnectivityInfo& WithMetadata(const Aws::String& value) { SetMetadata(value); return *this;} /** *

Additional metadata to provide to client devices that connect to this core * device.

*/ inline ConnectivityInfo& WithMetadata(Aws::String&& value) { SetMetadata(std::move(value)); return *this;} /** *

Additional metadata to provide to client devices that connect to this core * device.

*/ inline ConnectivityInfo& WithMetadata(const char* value) { SetMetadata(value); return *this;} private: Aws::String m_id; bool m_idHasBeenSet = false; Aws::String m_hostAddress; bool m_hostAddressHasBeenSet = false; int m_portNumber; bool m_portNumberHasBeenSet = false; Aws::String m_metadata; bool m_metadataHasBeenSet = false; }; } // namespace Model } // namespace GreengrassV2 } // namespace Aws