/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Specifies limits on the messages that a journey can send and the number of
* times participants can enter a journey.See Also:
AWS
* API Reference
The maximum number of messages that the journey can send to a single * participant during a 24-hour period. The maximum value is 100.
*/ inline int GetDailyCap() const{ return m_dailyCap; } /** *The maximum number of messages that the journey can send to a single * participant during a 24-hour period. The maximum value is 100.
*/ inline bool DailyCapHasBeenSet() const { return m_dailyCapHasBeenSet; } /** *The maximum number of messages that the journey can send to a single * participant during a 24-hour period. The maximum value is 100.
*/ inline void SetDailyCap(int value) { m_dailyCapHasBeenSet = true; m_dailyCap = value; } /** *The maximum number of messages that the journey can send to a single * participant during a 24-hour period. The maximum value is 100.
*/ inline JourneyLimits& WithDailyCap(int value) { SetDailyCap(value); return *this;} /** *The maximum number of times that a participant can enter the journey. The * maximum value is 100. To allow participants to enter the journey an unlimited * number of times, set this value to 0.
*/ inline int GetEndpointReentryCap() const{ return m_endpointReentryCap; } /** *The maximum number of times that a participant can enter the journey. The * maximum value is 100. To allow participants to enter the journey an unlimited * number of times, set this value to 0.
*/ inline bool EndpointReentryCapHasBeenSet() const { return m_endpointReentryCapHasBeenSet; } /** *The maximum number of times that a participant can enter the journey. The * maximum value is 100. To allow participants to enter the journey an unlimited * number of times, set this value to 0.
*/ inline void SetEndpointReentryCap(int value) { m_endpointReentryCapHasBeenSet = true; m_endpointReentryCap = value; } /** *The maximum number of times that a participant can enter the journey. The * maximum value is 100. To allow participants to enter the journey an unlimited * number of times, set this value to 0.
*/ inline JourneyLimits& WithEndpointReentryCap(int value) { SetEndpointReentryCap(value); return *this;} /** *The maximum number of messages that the journey can send each second.
*/ inline int GetMessagesPerSecond() const{ return m_messagesPerSecond; } /** *The maximum number of messages that the journey can send each second.
*/ inline bool MessagesPerSecondHasBeenSet() const { return m_messagesPerSecondHasBeenSet; } /** *The maximum number of messages that the journey can send each second.
*/ inline void SetMessagesPerSecond(int value) { m_messagesPerSecondHasBeenSet = true; m_messagesPerSecond = value; } /** *The maximum number of messages that the journey can send each second.
*/ inline JourneyLimits& WithMessagesPerSecond(int value) { SetMessagesPerSecond(value); return *this;} /** *Minimum time that must pass before an endpoint can re-enter a given journey. * The duration should use an ISO 8601 format, such as PT1H.
*/ inline const Aws::String& GetEndpointReentryInterval() const{ return m_endpointReentryInterval; } /** *Minimum time that must pass before an endpoint can re-enter a given journey. * The duration should use an ISO 8601 format, such as PT1H.
*/ inline bool EndpointReentryIntervalHasBeenSet() const { return m_endpointReentryIntervalHasBeenSet; } /** *Minimum time that must pass before an endpoint can re-enter a given journey. * The duration should use an ISO 8601 format, such as PT1H.
*/ inline void SetEndpointReentryInterval(const Aws::String& value) { m_endpointReentryIntervalHasBeenSet = true; m_endpointReentryInterval = value; } /** *Minimum time that must pass before an endpoint can re-enter a given journey. * The duration should use an ISO 8601 format, such as PT1H.
*/ inline void SetEndpointReentryInterval(Aws::String&& value) { m_endpointReentryIntervalHasBeenSet = true; m_endpointReentryInterval = std::move(value); } /** *Minimum time that must pass before an endpoint can re-enter a given journey. * The duration should use an ISO 8601 format, such as PT1H.
*/ inline void SetEndpointReentryInterval(const char* value) { m_endpointReentryIntervalHasBeenSet = true; m_endpointReentryInterval.assign(value); } /** *Minimum time that must pass before an endpoint can re-enter a given journey. * The duration should use an ISO 8601 format, such as PT1H.
*/ inline JourneyLimits& WithEndpointReentryInterval(const Aws::String& value) { SetEndpointReentryInterval(value); return *this;} /** *Minimum time that must pass before an endpoint can re-enter a given journey. * The duration should use an ISO 8601 format, such as PT1H.
*/ inline JourneyLimits& WithEndpointReentryInterval(Aws::String&& value) { SetEndpointReentryInterval(std::move(value)); return *this;} /** *Minimum time that must pass before an endpoint can re-enter a given journey. * The duration should use an ISO 8601 format, such as PT1H.
*/ inline JourneyLimits& WithEndpointReentryInterval(const char* value) { SetEndpointReentryInterval(value); return *this;} /** *The number of messages that an endpoint can receive during the specified * timeframe.
*/ inline const JourneyTimeframeCap& GetTimeframeCap() const{ return m_timeframeCap; } /** *The number of messages that an endpoint can receive during the specified * timeframe.
*/ inline bool TimeframeCapHasBeenSet() const { return m_timeframeCapHasBeenSet; } /** *The number of messages that an endpoint can receive during the specified * timeframe.
*/ inline void SetTimeframeCap(const JourneyTimeframeCap& value) { m_timeframeCapHasBeenSet = true; m_timeframeCap = value; } /** *The number of messages that an endpoint can receive during the specified * timeframe.
*/ inline void SetTimeframeCap(JourneyTimeframeCap&& value) { m_timeframeCapHasBeenSet = true; m_timeframeCap = std::move(value); } /** *The number of messages that an endpoint can receive during the specified * timeframe.
*/ inline JourneyLimits& WithTimeframeCap(const JourneyTimeframeCap& value) { SetTimeframeCap(value); return *this;} /** *The number of messages that an endpoint can receive during the specified * timeframe.
*/ inline JourneyLimits& WithTimeframeCap(JourneyTimeframeCap&& value) { SetTimeframeCap(std::move(value)); return *this;} /** *The maximum number of messages a journey can sent to a single endpoint. The * maximum value is 100. If set to 0, this limit will not apply.
*/ inline int GetTotalCap() const{ return m_totalCap; } /** *The maximum number of messages a journey can sent to a single endpoint. The * maximum value is 100. If set to 0, this limit will not apply.
*/ inline bool TotalCapHasBeenSet() const { return m_totalCapHasBeenSet; } /** *The maximum number of messages a journey can sent to a single endpoint. The * maximum value is 100. If set to 0, this limit will not apply.
*/ inline void SetTotalCap(int value) { m_totalCapHasBeenSet = true; m_totalCap = value; } /** *The maximum number of messages a journey can sent to a single endpoint. The * maximum value is 100. If set to 0, this limit will not apply.
*/ inline JourneyLimits& WithTotalCap(int value) { SetTotalCap(value); return *this;} private: int m_dailyCap; bool m_dailyCapHasBeenSet = false; int m_endpointReentryCap; bool m_endpointReentryCapHasBeenSet = false; int m_messagesPerSecond; bool m_messagesPerSecondHasBeenSet = false; Aws::String m_endpointReentryInterval; bool m_endpointReentryIntervalHasBeenSet = false; JourneyTimeframeCap m_timeframeCap; bool m_timeframeCapHasBeenSet = false; int m_totalCap; bool m_totalCapHasBeenSet = false; }; } // namespace Model } // namespace Pinpoint } // namespace Aws