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

An over-the-air update (OTA) job configuration.

See Also:

AWS * API Reference

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

Whether to apply the update if it is a major version change.

*/ inline bool GetAllowMajorVersionUpdate() const{ return m_allowMajorVersionUpdate; } /** *

Whether to apply the update if it is a major version change.

*/ inline bool AllowMajorVersionUpdateHasBeenSet() const { return m_allowMajorVersionUpdateHasBeenSet; } /** *

Whether to apply the update if it is a major version change.

*/ inline void SetAllowMajorVersionUpdate(bool value) { m_allowMajorVersionUpdateHasBeenSet = true; m_allowMajorVersionUpdate = value; } /** *

Whether to apply the update if it is a major version change.

*/ inline OTAJobConfig& WithAllowMajorVersionUpdate(bool value) { SetAllowMajorVersionUpdate(value); return *this;} /** *

The target version of the device software.

*/ inline const Aws::String& GetImageVersion() const{ return m_imageVersion; } /** *

The target version of the device software.

*/ inline bool ImageVersionHasBeenSet() const { return m_imageVersionHasBeenSet; } /** *

The target version of the device software.

*/ inline void SetImageVersion(const Aws::String& value) { m_imageVersionHasBeenSet = true; m_imageVersion = value; } /** *

The target version of the device software.

*/ inline void SetImageVersion(Aws::String&& value) { m_imageVersionHasBeenSet = true; m_imageVersion = std::move(value); } /** *

The target version of the device software.

*/ inline void SetImageVersion(const char* value) { m_imageVersionHasBeenSet = true; m_imageVersion.assign(value); } /** *

The target version of the device software.

*/ inline OTAJobConfig& WithImageVersion(const Aws::String& value) { SetImageVersion(value); return *this;} /** *

The target version of the device software.

*/ inline OTAJobConfig& WithImageVersion(Aws::String&& value) { SetImageVersion(std::move(value)); return *this;} /** *

The target version of the device software.

*/ inline OTAJobConfig& WithImageVersion(const char* value) { SetImageVersion(value); return *this;} private: bool m_allowMajorVersionUpdate; bool m_allowMajorVersionUpdateHasBeenSet = false; Aws::String m_imageVersion; bool m_imageVersionHasBeenSet = false; }; } // namespace Model } // namespace Panorama } // namespace Aws