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

Contains a summary of a gateway.

See Also:

AWS * API Reference

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

The ID of the gateway device.

*/ inline const Aws::String& GetGatewayId() const{ return m_gatewayId; } /** *

The ID of the gateway device.

*/ inline bool GatewayIdHasBeenSet() const { return m_gatewayIdHasBeenSet; } /** *

The ID of the gateway device.

*/ inline void SetGatewayId(const Aws::String& value) { m_gatewayIdHasBeenSet = true; m_gatewayId = value; } /** *

The ID of the gateway device.

*/ inline void SetGatewayId(Aws::String&& value) { m_gatewayIdHasBeenSet = true; m_gatewayId = std::move(value); } /** *

The ID of the gateway device.

*/ inline void SetGatewayId(const char* value) { m_gatewayIdHasBeenSet = true; m_gatewayId.assign(value); } /** *

The ID of the gateway device.

*/ inline GatewaySummary& WithGatewayId(const Aws::String& value) { SetGatewayId(value); return *this;} /** *

The ID of the gateway device.

*/ inline GatewaySummary& WithGatewayId(Aws::String&& value) { SetGatewayId(std::move(value)); return *this;} /** *

The ID of the gateway device.

*/ inline GatewaySummary& WithGatewayId(const char* value) { SetGatewayId(value); return *this;} /** *

The name of the asset.

*/ inline const Aws::String& GetGatewayName() const{ return m_gatewayName; } /** *

The name of the asset.

*/ inline bool GatewayNameHasBeenSet() const { return m_gatewayNameHasBeenSet; } /** *

The name of the asset.

*/ inline void SetGatewayName(const Aws::String& value) { m_gatewayNameHasBeenSet = true; m_gatewayName = value; } /** *

The name of the asset.

*/ inline void SetGatewayName(Aws::String&& value) { m_gatewayNameHasBeenSet = true; m_gatewayName = std::move(value); } /** *

The name of the asset.

*/ inline void SetGatewayName(const char* value) { m_gatewayNameHasBeenSet = true; m_gatewayName.assign(value); } /** *

The name of the asset.

*/ inline GatewaySummary& WithGatewayName(const Aws::String& value) { SetGatewayName(value); return *this;} /** *

The name of the asset.

*/ inline GatewaySummary& WithGatewayName(Aws::String&& value) { SetGatewayName(std::move(value)); return *this;} /** *

The name of the asset.

*/ inline GatewaySummary& WithGatewayName(const char* value) { SetGatewayName(value); return *this;} inline const GatewayPlatform& GetGatewayPlatform() const{ return m_gatewayPlatform; } inline bool GatewayPlatformHasBeenSet() const { return m_gatewayPlatformHasBeenSet; } inline void SetGatewayPlatform(const GatewayPlatform& value) { m_gatewayPlatformHasBeenSet = true; m_gatewayPlatform = value; } inline void SetGatewayPlatform(GatewayPlatform&& value) { m_gatewayPlatformHasBeenSet = true; m_gatewayPlatform = std::move(value); } inline GatewaySummary& WithGatewayPlatform(const GatewayPlatform& value) { SetGatewayPlatform(value); return *this;} inline GatewaySummary& WithGatewayPlatform(GatewayPlatform&& value) { SetGatewayPlatform(std::move(value)); return *this;} /** *

A list of gateway capability summaries that each contain a namespace and * status. Each gateway capability defines data sources for the gateway. To * retrieve a capability configuration's definition, use DescribeGatewayCapabilityConfiguration.

*/ inline const Aws::Vector& GetGatewayCapabilitySummaries() const{ return m_gatewayCapabilitySummaries; } /** *

A list of gateway capability summaries that each contain a namespace and * status. Each gateway capability defines data sources for the gateway. To * retrieve a capability configuration's definition, use DescribeGatewayCapabilityConfiguration.

*/ inline bool GatewayCapabilitySummariesHasBeenSet() const { return m_gatewayCapabilitySummariesHasBeenSet; } /** *

A list of gateway capability summaries that each contain a namespace and * status. Each gateway capability defines data sources for the gateway. To * retrieve a capability configuration's definition, use DescribeGatewayCapabilityConfiguration.

*/ inline void SetGatewayCapabilitySummaries(const Aws::Vector& value) { m_gatewayCapabilitySummariesHasBeenSet = true; m_gatewayCapabilitySummaries = value; } /** *

A list of gateway capability summaries that each contain a namespace and * status. Each gateway capability defines data sources for the gateway. To * retrieve a capability configuration's definition, use DescribeGatewayCapabilityConfiguration.

*/ inline void SetGatewayCapabilitySummaries(Aws::Vector&& value) { m_gatewayCapabilitySummariesHasBeenSet = true; m_gatewayCapabilitySummaries = std::move(value); } /** *

A list of gateway capability summaries that each contain a namespace and * status. Each gateway capability defines data sources for the gateway. To * retrieve a capability configuration's definition, use DescribeGatewayCapabilityConfiguration.

*/ inline GatewaySummary& WithGatewayCapabilitySummaries(const Aws::Vector& value) { SetGatewayCapabilitySummaries(value); return *this;} /** *

A list of gateway capability summaries that each contain a namespace and * status. Each gateway capability defines data sources for the gateway. To * retrieve a capability configuration's definition, use DescribeGatewayCapabilityConfiguration.

*/ inline GatewaySummary& WithGatewayCapabilitySummaries(Aws::Vector&& value) { SetGatewayCapabilitySummaries(std::move(value)); return *this;} /** *

A list of gateway capability summaries that each contain a namespace and * status. Each gateway capability defines data sources for the gateway. To * retrieve a capability configuration's definition, use DescribeGatewayCapabilityConfiguration.

*/ inline GatewaySummary& AddGatewayCapabilitySummaries(const GatewayCapabilitySummary& value) { m_gatewayCapabilitySummariesHasBeenSet = true; m_gatewayCapabilitySummaries.push_back(value); return *this; } /** *

A list of gateway capability summaries that each contain a namespace and * status. Each gateway capability defines data sources for the gateway. To * retrieve a capability configuration's definition, use DescribeGatewayCapabilityConfiguration.

*/ inline GatewaySummary& AddGatewayCapabilitySummaries(GatewayCapabilitySummary&& value) { m_gatewayCapabilitySummariesHasBeenSet = true; m_gatewayCapabilitySummaries.push_back(std::move(value)); return *this; } /** *

The date the gateway was created, in Unix epoch time.

*/ inline const Aws::Utils::DateTime& GetCreationDate() const{ return m_creationDate; } /** *

The date the gateway was created, in Unix epoch time.

*/ inline bool CreationDateHasBeenSet() const { return m_creationDateHasBeenSet; } /** *

The date the gateway was created, in Unix epoch time.

*/ inline void SetCreationDate(const Aws::Utils::DateTime& value) { m_creationDateHasBeenSet = true; m_creationDate = value; } /** *

The date the gateway was created, in Unix epoch time.

*/ inline void SetCreationDate(Aws::Utils::DateTime&& value) { m_creationDateHasBeenSet = true; m_creationDate = std::move(value); } /** *

The date the gateway was created, in Unix epoch time.

*/ inline GatewaySummary& WithCreationDate(const Aws::Utils::DateTime& value) { SetCreationDate(value); return *this;} /** *

The date the gateway was created, in Unix epoch time.

*/ inline GatewaySummary& WithCreationDate(Aws::Utils::DateTime&& value) { SetCreationDate(std::move(value)); return *this;} /** *

The date the gateway was last updated, in Unix epoch time.

*/ inline const Aws::Utils::DateTime& GetLastUpdateDate() const{ return m_lastUpdateDate; } /** *

The date the gateway was last updated, in Unix epoch time.

*/ inline bool LastUpdateDateHasBeenSet() const { return m_lastUpdateDateHasBeenSet; } /** *

The date the gateway was last updated, in Unix epoch time.

*/ inline void SetLastUpdateDate(const Aws::Utils::DateTime& value) { m_lastUpdateDateHasBeenSet = true; m_lastUpdateDate = value; } /** *

The date the gateway was last updated, in Unix epoch time.

*/ inline void SetLastUpdateDate(Aws::Utils::DateTime&& value) { m_lastUpdateDateHasBeenSet = true; m_lastUpdateDate = std::move(value); } /** *

The date the gateway was last updated, in Unix epoch time.

*/ inline GatewaySummary& WithLastUpdateDate(const Aws::Utils::DateTime& value) { SetLastUpdateDate(value); return *this;} /** *

The date the gateway was last updated, in Unix epoch time.

*/ inline GatewaySummary& WithLastUpdateDate(Aws::Utils::DateTime&& value) { SetLastUpdateDate(std::move(value)); return *this;} private: Aws::String m_gatewayId; bool m_gatewayIdHasBeenSet = false; Aws::String m_gatewayName; bool m_gatewayNameHasBeenSet = false; GatewayPlatform m_gatewayPlatform; bool m_gatewayPlatformHasBeenSet = false; Aws::Vector m_gatewayCapabilitySummaries; bool m_gatewayCapabilitySummariesHasBeenSet = false; Aws::Utils::DateTime m_creationDate; bool m_creationDateHasBeenSet = false; Aws::Utils::DateTime m_lastUpdateDate; bool m_lastUpdateDateHasBeenSet = false; }; } // namespace Model } // namespace IoTSiteWise } // namespace Aws