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/budgets/Budgets_EXPORTS.h> 8 #include <aws/budgets/BudgetsRequest.h> 9 #include <aws/core/utils/memory/stl/AWSString.h> 10 #include <aws/budgets/model/Notification.h> 11 #include <aws/budgets/model/Subscriber.h> 12 #include <utility> 13 14 namespace Aws 15 { 16 namespace Budgets 17 { 18 namespace Model 19 { 20 21 /** 22 * <p> Request of CreateSubscriber </p><p><h3>See Also:</h3> <a 23 * href="http://docs.aws.amazon.com/goto/WebAPI/budgets-2016-10-20/CreateSubscriberRequest">AWS 24 * API Reference</a></p> 25 */ 26 class AWS_BUDGETS_API CreateSubscriberRequest : public BudgetsRequest 27 { 28 public: 29 CreateSubscriberRequest(); 30 31 // Service request name is the Operation name which will send this request out, 32 // each operation should has unique request name, so that we can get operation's name from this request. 33 // Note: this is not true for response, multiple operations may have the same response name, 34 // so we can not get operation's name from response. GetServiceRequestName()35 inline virtual const char* GetServiceRequestName() const override { return "CreateSubscriber"; } 36 37 Aws::String SerializePayload() const override; 38 39 Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override; 40 41 42 /** 43 * <p>The <code>accountId</code> that is associated with the budget that you want 44 * to create a subscriber for.</p> 45 */ GetAccountId()46 inline const Aws::String& GetAccountId() const{ return m_accountId; } 47 48 /** 49 * <p>The <code>accountId</code> that is associated with the budget that you want 50 * to create a subscriber for.</p> 51 */ AccountIdHasBeenSet()52 inline bool AccountIdHasBeenSet() const { return m_accountIdHasBeenSet; } 53 54 /** 55 * <p>The <code>accountId</code> that is associated with the budget that you want 56 * to create a subscriber for.</p> 57 */ SetAccountId(const Aws::String & value)58 inline void SetAccountId(const Aws::String& value) { m_accountIdHasBeenSet = true; m_accountId = value; } 59 60 /** 61 * <p>The <code>accountId</code> that is associated with the budget that you want 62 * to create a subscriber for.</p> 63 */ SetAccountId(Aws::String && value)64 inline void SetAccountId(Aws::String&& value) { m_accountIdHasBeenSet = true; m_accountId = std::move(value); } 65 66 /** 67 * <p>The <code>accountId</code> that is associated with the budget that you want 68 * to create a subscriber for.</p> 69 */ SetAccountId(const char * value)70 inline void SetAccountId(const char* value) { m_accountIdHasBeenSet = true; m_accountId.assign(value); } 71 72 /** 73 * <p>The <code>accountId</code> that is associated with the budget that you want 74 * to create a subscriber for.</p> 75 */ WithAccountId(const Aws::String & value)76 inline CreateSubscriberRequest& WithAccountId(const Aws::String& value) { SetAccountId(value); return *this;} 77 78 /** 79 * <p>The <code>accountId</code> that is associated with the budget that you want 80 * to create a subscriber for.</p> 81 */ WithAccountId(Aws::String && value)82 inline CreateSubscriberRequest& WithAccountId(Aws::String&& value) { SetAccountId(std::move(value)); return *this;} 83 84 /** 85 * <p>The <code>accountId</code> that is associated with the budget that you want 86 * to create a subscriber for.</p> 87 */ WithAccountId(const char * value)88 inline CreateSubscriberRequest& WithAccountId(const char* value) { SetAccountId(value); return *this;} 89 90 91 /** 92 * <p>The name of the budget that you want to subscribe to. Budget names must be 93 * unique within an account.</p> 94 */ GetBudgetName()95 inline const Aws::String& GetBudgetName() const{ return m_budgetName; } 96 97 /** 98 * <p>The name of the budget that you want to subscribe to. Budget names must be 99 * unique within an account.</p> 100 */ BudgetNameHasBeenSet()101 inline bool BudgetNameHasBeenSet() const { return m_budgetNameHasBeenSet; } 102 103 /** 104 * <p>The name of the budget that you want to subscribe to. Budget names must be 105 * unique within an account.</p> 106 */ SetBudgetName(const Aws::String & value)107 inline void SetBudgetName(const Aws::String& value) { m_budgetNameHasBeenSet = true; m_budgetName = value; } 108 109 /** 110 * <p>The name of the budget that you want to subscribe to. Budget names must be 111 * unique within an account.</p> 112 */ SetBudgetName(Aws::String && value)113 inline void SetBudgetName(Aws::String&& value) { m_budgetNameHasBeenSet = true; m_budgetName = std::move(value); } 114 115 /** 116 * <p>The name of the budget that you want to subscribe to. Budget names must be 117 * unique within an account.</p> 118 */ SetBudgetName(const char * value)119 inline void SetBudgetName(const char* value) { m_budgetNameHasBeenSet = true; m_budgetName.assign(value); } 120 121 /** 122 * <p>The name of the budget that you want to subscribe to. Budget names must be 123 * unique within an account.</p> 124 */ WithBudgetName(const Aws::String & value)125 inline CreateSubscriberRequest& WithBudgetName(const Aws::String& value) { SetBudgetName(value); return *this;} 126 127 /** 128 * <p>The name of the budget that you want to subscribe to. Budget names must be 129 * unique within an account.</p> 130 */ WithBudgetName(Aws::String && value)131 inline CreateSubscriberRequest& WithBudgetName(Aws::String&& value) { SetBudgetName(std::move(value)); return *this;} 132 133 /** 134 * <p>The name of the budget that you want to subscribe to. Budget names must be 135 * unique within an account.</p> 136 */ WithBudgetName(const char * value)137 inline CreateSubscriberRequest& WithBudgetName(const char* value) { SetBudgetName(value); return *this;} 138 139 140 /** 141 * <p>The notification that you want to create a subscriber for.</p> 142 */ GetNotification()143 inline const Notification& GetNotification() const{ return m_notification; } 144 145 /** 146 * <p>The notification that you want to create a subscriber for.</p> 147 */ NotificationHasBeenSet()148 inline bool NotificationHasBeenSet() const { return m_notificationHasBeenSet; } 149 150 /** 151 * <p>The notification that you want to create a subscriber for.</p> 152 */ SetNotification(const Notification & value)153 inline void SetNotification(const Notification& value) { m_notificationHasBeenSet = true; m_notification = value; } 154 155 /** 156 * <p>The notification that you want to create a subscriber for.</p> 157 */ SetNotification(Notification && value)158 inline void SetNotification(Notification&& value) { m_notificationHasBeenSet = true; m_notification = std::move(value); } 159 160 /** 161 * <p>The notification that you want to create a subscriber for.</p> 162 */ WithNotification(const Notification & value)163 inline CreateSubscriberRequest& WithNotification(const Notification& value) { SetNotification(value); return *this;} 164 165 /** 166 * <p>The notification that you want to create a subscriber for.</p> 167 */ WithNotification(Notification && value)168 inline CreateSubscriberRequest& WithNotification(Notification&& value) { SetNotification(std::move(value)); return *this;} 169 170 171 /** 172 * <p>The subscriber that you want to associate with a budget notification.</p> 173 */ GetSubscriber()174 inline const Subscriber& GetSubscriber() const{ return m_subscriber; } 175 176 /** 177 * <p>The subscriber that you want to associate with a budget notification.</p> 178 */ SubscriberHasBeenSet()179 inline bool SubscriberHasBeenSet() const { return m_subscriberHasBeenSet; } 180 181 /** 182 * <p>The subscriber that you want to associate with a budget notification.</p> 183 */ SetSubscriber(const Subscriber & value)184 inline void SetSubscriber(const Subscriber& value) { m_subscriberHasBeenSet = true; m_subscriber = value; } 185 186 /** 187 * <p>The subscriber that you want to associate with a budget notification.</p> 188 */ SetSubscriber(Subscriber && value)189 inline void SetSubscriber(Subscriber&& value) { m_subscriberHasBeenSet = true; m_subscriber = std::move(value); } 190 191 /** 192 * <p>The subscriber that you want to associate with a budget notification.</p> 193 */ WithSubscriber(const Subscriber & value)194 inline CreateSubscriberRequest& WithSubscriber(const Subscriber& value) { SetSubscriber(value); return *this;} 195 196 /** 197 * <p>The subscriber that you want to associate with a budget notification.</p> 198 */ WithSubscriber(Subscriber && value)199 inline CreateSubscriberRequest& WithSubscriber(Subscriber&& value) { SetSubscriber(std::move(value)); return *this;} 200 201 private: 202 203 Aws::String m_accountId; 204 bool m_accountIdHasBeenSet; 205 206 Aws::String m_budgetName; 207 bool m_budgetNameHasBeenSet; 208 209 Notification m_notification; 210 bool m_notificationHasBeenSet; 211 212 Subscriber m_subscriber; 213 bool m_subscriberHasBeenSet; 214 }; 215 216 } // namespace Model 217 } // namespace Budgets 218 } // namespace Aws 219