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

Contains information about criteria to meet before a job increases its * rollout rate. Specify either numberOfNotifiedThings or * numberOfSucceededThings.

See Also:

AWS * API Reference

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

The number of devices to receive the job notification before the rollout rate * increases.

*/ inline int GetNumberOfNotifiedThings() const{ return m_numberOfNotifiedThings; } /** *

The number of devices to receive the job notification before the rollout rate * increases.

*/ inline bool NumberOfNotifiedThingsHasBeenSet() const { return m_numberOfNotifiedThingsHasBeenSet; } /** *

The number of devices to receive the job notification before the rollout rate * increases.

*/ inline void SetNumberOfNotifiedThings(int value) { m_numberOfNotifiedThingsHasBeenSet = true; m_numberOfNotifiedThings = value; } /** *

The number of devices to receive the job notification before the rollout rate * increases.

*/ inline IoTJobRateIncreaseCriteria& WithNumberOfNotifiedThings(int value) { SetNumberOfNotifiedThings(value); return *this;} /** *

The number of devices to successfully run the configuration job before the * rollout rate increases.

*/ inline int GetNumberOfSucceededThings() const{ return m_numberOfSucceededThings; } /** *

The number of devices to successfully run the configuration job before the * rollout rate increases.

*/ inline bool NumberOfSucceededThingsHasBeenSet() const { return m_numberOfSucceededThingsHasBeenSet; } /** *

The number of devices to successfully run the configuration job before the * rollout rate increases.

*/ inline void SetNumberOfSucceededThings(int value) { m_numberOfSucceededThingsHasBeenSet = true; m_numberOfSucceededThings = value; } /** *

The number of devices to successfully run the configuration job before the * rollout rate increases.

*/ inline IoTJobRateIncreaseCriteria& WithNumberOfSucceededThings(int value) { SetNumberOfSucceededThings(value); return *this;} private: int m_numberOfNotifiedThings; bool m_numberOfNotifiedThingsHasBeenSet = false; int m_numberOfSucceededThings; bool m_numberOfSucceededThingsHasBeenSet = false; }; } // namespace Model } // namespace GreengrassV2 } // namespace Aws