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

Describes the location of the updated firmware.

See Also:

AWS API * Reference

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

Describes the location in S3 of the updated firmware.

*/ inline const S3Destination& GetS3Destination() const{ return m_s3Destination; } /** *

Describes the location in S3 of the updated firmware.

*/ inline bool S3DestinationHasBeenSet() const { return m_s3DestinationHasBeenSet; } /** *

Describes the location in S3 of the updated firmware.

*/ inline void SetS3Destination(const S3Destination& value) { m_s3DestinationHasBeenSet = true; m_s3Destination = value; } /** *

Describes the location in S3 of the updated firmware.

*/ inline void SetS3Destination(S3Destination&& value) { m_s3DestinationHasBeenSet = true; m_s3Destination = std::move(value); } /** *

Describes the location in S3 of the updated firmware.

*/ inline Destination& WithS3Destination(const S3Destination& value) { SetS3Destination(value); return *this;} /** *

Describes the location in S3 of the updated firmware.

*/ inline Destination& WithS3Destination(S3Destination&& value) { SetS3Destination(std::move(value)); return *this;} private: S3Destination m_s3Destination; bool m_s3DestinationHasBeenSet = false; }; } // namespace Model } // namespace IoT } // namespace Aws