1 /** 2 * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. 3 * SPDX-License-Identifier: Apache-2.0. 4 */ 5 6 #pragma once 7 #include <aws/pinpoint/Pinpoint_EXPORTS.h> 8 #include <aws/core/utils/memory/stl/AWSString.h> 9 #include <utility> 10 11 namespace Aws 12 { 13 namespace Utils 14 { 15 namespace Json 16 { 17 class JsonValue; 18 class JsonView; 19 } // namespace Json 20 } // namespace Utils 21 namespace Pinpoint 22 { 23 namespace Model 24 { 25 26 /** 27 * <p>Specifies the settings for a path in a random split activity in a 28 * journey.</p><p><h3>See Also:</h3> <a 29 * href="http://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/RandomSplitEntry">AWS 30 * API Reference</a></p> 31 */ 32 class AWS_PINPOINT_API RandomSplitEntry 33 { 34 public: 35 RandomSplitEntry(); 36 RandomSplitEntry(Aws::Utils::Json::JsonView jsonValue); 37 RandomSplitEntry& operator=(Aws::Utils::Json::JsonView jsonValue); 38 Aws::Utils::Json::JsonValue Jsonize() const; 39 40 41 /** 42 * <p>The unique identifier for the next activity to perform, after completing the 43 * activity for the path.</p> 44 */ GetNextActivity()45 inline const Aws::String& GetNextActivity() const{ return m_nextActivity; } 46 47 /** 48 * <p>The unique identifier for the next activity to perform, after completing the 49 * activity for the path.</p> 50 */ NextActivityHasBeenSet()51 inline bool NextActivityHasBeenSet() const { return m_nextActivityHasBeenSet; } 52 53 /** 54 * <p>The unique identifier for the next activity to perform, after completing the 55 * activity for the path.</p> 56 */ SetNextActivity(const Aws::String & value)57 inline void SetNextActivity(const Aws::String& value) { m_nextActivityHasBeenSet = true; m_nextActivity = value; } 58 59 /** 60 * <p>The unique identifier for the next activity to perform, after completing the 61 * activity for the path.</p> 62 */ SetNextActivity(Aws::String && value)63 inline void SetNextActivity(Aws::String&& value) { m_nextActivityHasBeenSet = true; m_nextActivity = std::move(value); } 64 65 /** 66 * <p>The unique identifier for the next activity to perform, after completing the 67 * activity for the path.</p> 68 */ SetNextActivity(const char * value)69 inline void SetNextActivity(const char* value) { m_nextActivityHasBeenSet = true; m_nextActivity.assign(value); } 70 71 /** 72 * <p>The unique identifier for the next activity to perform, after completing the 73 * activity for the path.</p> 74 */ WithNextActivity(const Aws::String & value)75 inline RandomSplitEntry& WithNextActivity(const Aws::String& value) { SetNextActivity(value); return *this;} 76 77 /** 78 * <p>The unique identifier for the next activity to perform, after completing the 79 * activity for the path.</p> 80 */ WithNextActivity(Aws::String && value)81 inline RandomSplitEntry& WithNextActivity(Aws::String&& value) { SetNextActivity(std::move(value)); return *this;} 82 83 /** 84 * <p>The unique identifier for the next activity to perform, after completing the 85 * activity for the path.</p> 86 */ WithNextActivity(const char * value)87 inline RandomSplitEntry& WithNextActivity(const char* value) { SetNextActivity(value); return *this;} 88 89 90 /** 91 * <p>The percentage of participants to send down the activity path.</p> <p>To 92 * determine which participants are sent down each path, Amazon Pinpoint applies a 93 * probability-based algorithm to the percentages that you specify for the paths. 94 * Therefore, the actual percentage of participants who are sent down a path may 95 * not be equal to the percentage that you specify.</p> 96 */ GetPercentage()97 inline int GetPercentage() const{ return m_percentage; } 98 99 /** 100 * <p>The percentage of participants to send down the activity path.</p> <p>To 101 * determine which participants are sent down each path, Amazon Pinpoint applies a 102 * probability-based algorithm to the percentages that you specify for the paths. 103 * Therefore, the actual percentage of participants who are sent down a path may 104 * not be equal to the percentage that you specify.</p> 105 */ PercentageHasBeenSet()106 inline bool PercentageHasBeenSet() const { return m_percentageHasBeenSet; } 107 108 /** 109 * <p>The percentage of participants to send down the activity path.</p> <p>To 110 * determine which participants are sent down each path, Amazon Pinpoint applies a 111 * probability-based algorithm to the percentages that you specify for the paths. 112 * Therefore, the actual percentage of participants who are sent down a path may 113 * not be equal to the percentage that you specify.</p> 114 */ SetPercentage(int value)115 inline void SetPercentage(int value) { m_percentageHasBeenSet = true; m_percentage = value; } 116 117 /** 118 * <p>The percentage of participants to send down the activity path.</p> <p>To 119 * determine which participants are sent down each path, Amazon Pinpoint applies a 120 * probability-based algorithm to the percentages that you specify for the paths. 121 * Therefore, the actual percentage of participants who are sent down a path may 122 * not be equal to the percentage that you specify.</p> 123 */ WithPercentage(int value)124 inline RandomSplitEntry& WithPercentage(int value) { SetPercentage(value); return *this;} 125 126 private: 127 128 Aws::String m_nextActivity; 129 bool m_nextActivityHasBeenSet; 130 131 int m_percentage; 132 bool m_percentageHasBeenSet; 133 }; 134 135 } // namespace Model 136 } // namespace Pinpoint 137 } // namespace Aws 138