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

The default sending limits for journeys in the application. To override these * limits and define custom limits for a specific journey, use the Journey * resource.

See Also:

AWS * API Reference

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

The daily number of messages that an endpoint can receive from all journeys. * The maximum value is 100. If set to 0, this limit will not apply.

*/ inline int GetDailyCap() const{ return m_dailyCap; } /** *

The daily number of messages that an endpoint can receive from all journeys. * The maximum value is 100. If set to 0, this limit will not apply.

*/ inline bool DailyCapHasBeenSet() const { return m_dailyCapHasBeenSet; } /** *

The daily number of messages that an endpoint can receive from all journeys. * The maximum value is 100. If set to 0, this limit will not apply.

*/ inline void SetDailyCap(int value) { m_dailyCapHasBeenSet = true; m_dailyCap = value; } /** *

The daily number of messages that an endpoint can receive from all journeys. * The maximum value is 100. If set to 0, this limit will not apply.

*/ inline ApplicationSettingsJourneyLimits& WithDailyCap(int value) { SetDailyCap(value); return *this;} /** *

The default maximum number of messages that can be sent to an endpoint during * the specified timeframe for all journeys.

*/ inline const JourneyTimeframeCap& GetTimeframeCap() const{ return m_timeframeCap; } /** *

The default maximum number of messages that can be sent to an endpoint during * the specified timeframe for all journeys.

*/ inline bool TimeframeCapHasBeenSet() const { return m_timeframeCapHasBeenSet; } /** *

The default maximum number of messages that can be sent to an endpoint during * the specified timeframe for all journeys.

*/ inline void SetTimeframeCap(const JourneyTimeframeCap& value) { m_timeframeCapHasBeenSet = true; m_timeframeCap = value; } /** *

The default maximum number of messages that can be sent to an endpoint during * the specified timeframe for all journeys.

*/ inline void SetTimeframeCap(JourneyTimeframeCap&& value) { m_timeframeCapHasBeenSet = true; m_timeframeCap = std::move(value); } /** *

The default maximum number of messages that can be sent to an endpoint during * the specified timeframe for all journeys.

*/ inline ApplicationSettingsJourneyLimits& WithTimeframeCap(const JourneyTimeframeCap& value) { SetTimeframeCap(value); return *this;} /** *

The default maximum number of messages that can be sent to an endpoint during * the specified timeframe for all journeys.

*/ inline ApplicationSettingsJourneyLimits& WithTimeframeCap(JourneyTimeframeCap&& value) { SetTimeframeCap(std::move(value)); return *this;} /** *

The default maximum number of messages that a single 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 default maximum number of messages that a single 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 default maximum number of messages that a single 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 default maximum number of messages that a single journey can sent to a * single endpoint. The maximum value is 100. If set to 0, this limit will not * apply.

*/ inline ApplicationSettingsJourneyLimits& WithTotalCap(int value) { SetTotalCap(value); return *this;} private: int m_dailyCap; bool m_dailyCapHasBeenSet = false; JourneyTimeframeCap m_timeframeCap; bool m_timeframeCapHasBeenSet = false; int m_totalCap; bool m_totalCapHasBeenSet = false; }; } // namespace Model } // namespace Pinpoint } // namespace Aws