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

Dataflow details for the destination side.

See Also:

AWS * API Reference

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

Additional details for a Config, if type is dataflow endpoint or * antenna demod decode.

*/ inline const ConfigDetails& GetConfigDetails() const{ return m_configDetails; } /** *

Additional details for a Config, if type is dataflow endpoint or * antenna demod decode.

*/ inline bool ConfigDetailsHasBeenSet() const { return m_configDetailsHasBeenSet; } /** *

Additional details for a Config, if type is dataflow endpoint or * antenna demod decode.

*/ inline void SetConfigDetails(const ConfigDetails& value) { m_configDetailsHasBeenSet = true; m_configDetails = value; } /** *

Additional details for a Config, if type is dataflow endpoint or * antenna demod decode.

*/ inline void SetConfigDetails(ConfigDetails&& value) { m_configDetailsHasBeenSet = true; m_configDetails = std::move(value); } /** *

Additional details for a Config, if type is dataflow endpoint or * antenna demod decode.

*/ inline Destination& WithConfigDetails(const ConfigDetails& value) { SetConfigDetails(value); return *this;} /** *

Additional details for a Config, if type is dataflow endpoint or * antenna demod decode.

*/ inline Destination& WithConfigDetails(ConfigDetails&& value) { SetConfigDetails(std::move(value)); return *this;} /** *

UUID of a Config.

*/ inline const Aws::String& GetConfigId() const{ return m_configId; } /** *

UUID of a Config.

*/ inline bool ConfigIdHasBeenSet() const { return m_configIdHasBeenSet; } /** *

UUID of a Config.

*/ inline void SetConfigId(const Aws::String& value) { m_configIdHasBeenSet = true; m_configId = value; } /** *

UUID of a Config.

*/ inline void SetConfigId(Aws::String&& value) { m_configIdHasBeenSet = true; m_configId = std::move(value); } /** *

UUID of a Config.

*/ inline void SetConfigId(const char* value) { m_configIdHasBeenSet = true; m_configId.assign(value); } /** *

UUID of a Config.

*/ inline Destination& WithConfigId(const Aws::String& value) { SetConfigId(value); return *this;} /** *

UUID of a Config.

*/ inline Destination& WithConfigId(Aws::String&& value) { SetConfigId(std::move(value)); return *this;} /** *

UUID of a Config.

*/ inline Destination& WithConfigId(const char* value) { SetConfigId(value); return *this;} /** *

Type of a Config.

*/ inline const ConfigCapabilityType& GetConfigType() const{ return m_configType; } /** *

Type of a Config.

*/ inline bool ConfigTypeHasBeenSet() const { return m_configTypeHasBeenSet; } /** *

Type of a Config.

*/ inline void SetConfigType(const ConfigCapabilityType& value) { m_configTypeHasBeenSet = true; m_configType = value; } /** *

Type of a Config.

*/ inline void SetConfigType(ConfigCapabilityType&& value) { m_configTypeHasBeenSet = true; m_configType = std::move(value); } /** *

Type of a Config.

*/ inline Destination& WithConfigType(const ConfigCapabilityType& value) { SetConfigType(value); return *this;} /** *

Type of a Config.

*/ inline Destination& WithConfigType(ConfigCapabilityType&& value) { SetConfigType(std::move(value)); return *this;} /** *

Region of a dataflow destination.

*/ inline const Aws::String& GetDataflowDestinationRegion() const{ return m_dataflowDestinationRegion; } /** *

Region of a dataflow destination.

*/ inline bool DataflowDestinationRegionHasBeenSet() const { return m_dataflowDestinationRegionHasBeenSet; } /** *

Region of a dataflow destination.

*/ inline void SetDataflowDestinationRegion(const Aws::String& value) { m_dataflowDestinationRegionHasBeenSet = true; m_dataflowDestinationRegion = value; } /** *

Region of a dataflow destination.

*/ inline void SetDataflowDestinationRegion(Aws::String&& value) { m_dataflowDestinationRegionHasBeenSet = true; m_dataflowDestinationRegion = std::move(value); } /** *

Region of a dataflow destination.

*/ inline void SetDataflowDestinationRegion(const char* value) { m_dataflowDestinationRegionHasBeenSet = true; m_dataflowDestinationRegion.assign(value); } /** *

Region of a dataflow destination.

*/ inline Destination& WithDataflowDestinationRegion(const Aws::String& value) { SetDataflowDestinationRegion(value); return *this;} /** *

Region of a dataflow destination.

*/ inline Destination& WithDataflowDestinationRegion(Aws::String&& value) { SetDataflowDestinationRegion(std::move(value)); return *this;} /** *

Region of a dataflow destination.

*/ inline Destination& WithDataflowDestinationRegion(const char* value) { SetDataflowDestinationRegion(value); return *this;} private: ConfigDetails m_configDetails; bool m_configDetailsHasBeenSet = false; Aws::String m_configId; bool m_configIdHasBeenSet = false; ConfigCapabilityType m_configType; bool m_configTypeHasBeenSet = false; Aws::String m_dataflowDestinationRegion; bool m_dataflowDestinationRegionHasBeenSet = false; }; } // namespace Model } // namespace GroundStation } // namespace Aws