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/pinpoint/model/AndroidPushNotificationTemplate.h> 9 #include <aws/pinpoint/model/APNSPushNotificationTemplate.h> 10 #include <aws/pinpoint/model/DefaultPushNotificationTemplate.h> 11 #include <aws/core/utils/memory/stl/AWSString.h> 12 #include <aws/core/utils/memory/stl/AWSMap.h> 13 #include <utility> 14 15 namespace Aws 16 { 17 namespace Utils 18 { 19 namespace Json 20 { 21 class JsonValue; 22 class JsonView; 23 } // namespace Json 24 } // namespace Utils 25 namespace Pinpoint 26 { 27 namespace Model 28 { 29 30 /** 31 * <p>Specifies the content and settings for a message template that can be used in 32 * messages that are sent through a push notification channel.</p><p><h3>See 33 * Also:</h3> <a 34 * href="http://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/PushNotificationTemplateRequest">AWS 35 * API Reference</a></p> 36 */ 37 class AWS_PINPOINT_API PushNotificationTemplateRequest 38 { 39 public: 40 PushNotificationTemplateRequest(); 41 PushNotificationTemplateRequest(Aws::Utils::Json::JsonView jsonValue); 42 PushNotificationTemplateRequest& operator=(Aws::Utils::Json::JsonView jsonValue); 43 Aws::Utils::Json::JsonValue Jsonize() const; 44 45 46 /** 47 * <p>The message template to use for the ADM (Amazon Device Messaging) channel. 48 * This message template overrides the default template for push notification 49 * channels (DefaultPushNotificationTemplate).</p> 50 */ GetADM()51 inline const AndroidPushNotificationTemplate& GetADM() const{ return m_aDM; } 52 53 /** 54 * <p>The message template to use for the ADM (Amazon Device Messaging) channel. 55 * This message template overrides the default template for push notification 56 * channels (DefaultPushNotificationTemplate).</p> 57 */ ADMHasBeenSet()58 inline bool ADMHasBeenSet() const { return m_aDMHasBeenSet; } 59 60 /** 61 * <p>The message template to use for the ADM (Amazon Device Messaging) channel. 62 * This message template overrides the default template for push notification 63 * channels (DefaultPushNotificationTemplate).</p> 64 */ SetADM(const AndroidPushNotificationTemplate & value)65 inline void SetADM(const AndroidPushNotificationTemplate& value) { m_aDMHasBeenSet = true; m_aDM = value; } 66 67 /** 68 * <p>The message template to use for the ADM (Amazon Device Messaging) channel. 69 * This message template overrides the default template for push notification 70 * channels (DefaultPushNotificationTemplate).</p> 71 */ SetADM(AndroidPushNotificationTemplate && value)72 inline void SetADM(AndroidPushNotificationTemplate&& value) { m_aDMHasBeenSet = true; m_aDM = std::move(value); } 73 74 /** 75 * <p>The message template to use for the ADM (Amazon Device Messaging) channel. 76 * This message template overrides the default template for push notification 77 * channels (DefaultPushNotificationTemplate).</p> 78 */ WithADM(const AndroidPushNotificationTemplate & value)79 inline PushNotificationTemplateRequest& WithADM(const AndroidPushNotificationTemplate& value) { SetADM(value); return *this;} 80 81 /** 82 * <p>The message template to use for the ADM (Amazon Device Messaging) channel. 83 * This message template overrides the default template for push notification 84 * channels (DefaultPushNotificationTemplate).</p> 85 */ WithADM(AndroidPushNotificationTemplate && value)86 inline PushNotificationTemplateRequest& WithADM(AndroidPushNotificationTemplate&& value) { SetADM(std::move(value)); return *this;} 87 88 89 /** 90 * <p>The message template to use for the APNs (Apple Push Notification service) 91 * channel. This message template overrides the default template for push 92 * notification channels (DefaultPushNotificationTemplate).</p> 93 */ GetAPNS()94 inline const APNSPushNotificationTemplate& GetAPNS() const{ return m_aPNS; } 95 96 /** 97 * <p>The message template to use for the APNs (Apple Push Notification service) 98 * channel. This message template overrides the default template for push 99 * notification channels (DefaultPushNotificationTemplate).</p> 100 */ APNSHasBeenSet()101 inline bool APNSHasBeenSet() const { return m_aPNSHasBeenSet; } 102 103 /** 104 * <p>The message template to use for the APNs (Apple Push Notification service) 105 * channel. This message template overrides the default template for push 106 * notification channels (DefaultPushNotificationTemplate).</p> 107 */ SetAPNS(const APNSPushNotificationTemplate & value)108 inline void SetAPNS(const APNSPushNotificationTemplate& value) { m_aPNSHasBeenSet = true; m_aPNS = value; } 109 110 /** 111 * <p>The message template to use for the APNs (Apple Push Notification service) 112 * channel. This message template overrides the default template for push 113 * notification channels (DefaultPushNotificationTemplate).</p> 114 */ SetAPNS(APNSPushNotificationTemplate && value)115 inline void SetAPNS(APNSPushNotificationTemplate&& value) { m_aPNSHasBeenSet = true; m_aPNS = std::move(value); } 116 117 /** 118 * <p>The message template to use for the APNs (Apple Push Notification service) 119 * channel. This message template overrides the default template for push 120 * notification channels (DefaultPushNotificationTemplate).</p> 121 */ WithAPNS(const APNSPushNotificationTemplate & value)122 inline PushNotificationTemplateRequest& WithAPNS(const APNSPushNotificationTemplate& value) { SetAPNS(value); return *this;} 123 124 /** 125 * <p>The message template to use for the APNs (Apple Push Notification service) 126 * channel. This message template overrides the default template for push 127 * notification channels (DefaultPushNotificationTemplate).</p> 128 */ WithAPNS(APNSPushNotificationTemplate && value)129 inline PushNotificationTemplateRequest& WithAPNS(APNSPushNotificationTemplate&& value) { SetAPNS(std::move(value)); return *this;} 130 131 132 /** 133 * <p>The message template to use for the Baidu (Baidu Cloud Push) channel. This 134 * message template overrides the default template for push notification channels 135 * (DefaultPushNotificationTemplate).</p> 136 */ GetBaidu()137 inline const AndroidPushNotificationTemplate& GetBaidu() const{ return m_baidu; } 138 139 /** 140 * <p>The message template to use for the Baidu (Baidu Cloud Push) channel. This 141 * message template overrides the default template for push notification channels 142 * (DefaultPushNotificationTemplate).</p> 143 */ BaiduHasBeenSet()144 inline bool BaiduHasBeenSet() const { return m_baiduHasBeenSet; } 145 146 /** 147 * <p>The message template to use for the Baidu (Baidu Cloud Push) channel. This 148 * message template overrides the default template for push notification channels 149 * (DefaultPushNotificationTemplate).</p> 150 */ SetBaidu(const AndroidPushNotificationTemplate & value)151 inline void SetBaidu(const AndroidPushNotificationTemplate& value) { m_baiduHasBeenSet = true; m_baidu = value; } 152 153 /** 154 * <p>The message template to use for the Baidu (Baidu Cloud Push) channel. This 155 * message template overrides the default template for push notification channels 156 * (DefaultPushNotificationTemplate).</p> 157 */ SetBaidu(AndroidPushNotificationTemplate && value)158 inline void SetBaidu(AndroidPushNotificationTemplate&& value) { m_baiduHasBeenSet = true; m_baidu = std::move(value); } 159 160 /** 161 * <p>The message template to use for the Baidu (Baidu Cloud Push) channel. This 162 * message template overrides the default template for push notification channels 163 * (DefaultPushNotificationTemplate).</p> 164 */ WithBaidu(const AndroidPushNotificationTemplate & value)165 inline PushNotificationTemplateRequest& WithBaidu(const AndroidPushNotificationTemplate& value) { SetBaidu(value); return *this;} 166 167 /** 168 * <p>The message template to use for the Baidu (Baidu Cloud Push) channel. This 169 * message template overrides the default template for push notification channels 170 * (DefaultPushNotificationTemplate).</p> 171 */ WithBaidu(AndroidPushNotificationTemplate && value)172 inline PushNotificationTemplateRequest& WithBaidu(AndroidPushNotificationTemplate&& value) { SetBaidu(std::move(value)); return *this;} 173 174 175 /** 176 * <p>The default message template to use for push notification channels.</p> 177 */ GetDefault()178 inline const DefaultPushNotificationTemplate& GetDefault() const{ return m_default; } 179 180 /** 181 * <p>The default message template to use for push notification channels.</p> 182 */ DefaultHasBeenSet()183 inline bool DefaultHasBeenSet() const { return m_defaultHasBeenSet; } 184 185 /** 186 * <p>The default message template to use for push notification channels.</p> 187 */ SetDefault(const DefaultPushNotificationTemplate & value)188 inline void SetDefault(const DefaultPushNotificationTemplate& value) { m_defaultHasBeenSet = true; m_default = value; } 189 190 /** 191 * <p>The default message template to use for push notification channels.</p> 192 */ SetDefault(DefaultPushNotificationTemplate && value)193 inline void SetDefault(DefaultPushNotificationTemplate&& value) { m_defaultHasBeenSet = true; m_default = std::move(value); } 194 195 /** 196 * <p>The default message template to use for push notification channels.</p> 197 */ WithDefault(const DefaultPushNotificationTemplate & value)198 inline PushNotificationTemplateRequest& WithDefault(const DefaultPushNotificationTemplate& value) { SetDefault(value); return *this;} 199 200 /** 201 * <p>The default message template to use for push notification channels.</p> 202 */ WithDefault(DefaultPushNotificationTemplate && value)203 inline PushNotificationTemplateRequest& WithDefault(DefaultPushNotificationTemplate&& value) { SetDefault(std::move(value)); return *this;} 204 205 206 /** 207 * <p>A JSON object that specifies the default values to use for message variables 208 * in the message template. This object is a set of key-value pairs. Each key 209 * defines a message variable in the template. The corresponding value defines the 210 * default value for that variable. When you create a message that's based on the 211 * template, you can override these defaults with message-specific and 212 * address-specific variables and values.</p> 213 */ GetDefaultSubstitutions()214 inline const Aws::String& GetDefaultSubstitutions() const{ return m_defaultSubstitutions; } 215 216 /** 217 * <p>A JSON object that specifies the default values to use for message variables 218 * in the message template. This object is a set of key-value pairs. Each key 219 * defines a message variable in the template. The corresponding value defines the 220 * default value for that variable. When you create a message that's based on the 221 * template, you can override these defaults with message-specific and 222 * address-specific variables and values.</p> 223 */ DefaultSubstitutionsHasBeenSet()224 inline bool DefaultSubstitutionsHasBeenSet() const { return m_defaultSubstitutionsHasBeenSet; } 225 226 /** 227 * <p>A JSON object that specifies the default values to use for message variables 228 * in the message template. This object is a set of key-value pairs. Each key 229 * defines a message variable in the template. The corresponding value defines the 230 * default value for that variable. When you create a message that's based on the 231 * template, you can override these defaults with message-specific and 232 * address-specific variables and values.</p> 233 */ SetDefaultSubstitutions(const Aws::String & value)234 inline void SetDefaultSubstitutions(const Aws::String& value) { m_defaultSubstitutionsHasBeenSet = true; m_defaultSubstitutions = value; } 235 236 /** 237 * <p>A JSON object that specifies the default values to use for message variables 238 * in the message template. This object is a set of key-value pairs. Each key 239 * defines a message variable in the template. The corresponding value defines the 240 * default value for that variable. When you create a message that's based on the 241 * template, you can override these defaults with message-specific and 242 * address-specific variables and values.</p> 243 */ SetDefaultSubstitutions(Aws::String && value)244 inline void SetDefaultSubstitutions(Aws::String&& value) { m_defaultSubstitutionsHasBeenSet = true; m_defaultSubstitutions = std::move(value); } 245 246 /** 247 * <p>A JSON object that specifies the default values to use for message variables 248 * in the message template. This object is a set of key-value pairs. Each key 249 * defines a message variable in the template. The corresponding value defines the 250 * default value for that variable. When you create a message that's based on the 251 * template, you can override these defaults with message-specific and 252 * address-specific variables and values.</p> 253 */ SetDefaultSubstitutions(const char * value)254 inline void SetDefaultSubstitutions(const char* value) { m_defaultSubstitutionsHasBeenSet = true; m_defaultSubstitutions.assign(value); } 255 256 /** 257 * <p>A JSON object that specifies the default values to use for message variables 258 * in the message template. This object is a set of key-value pairs. Each key 259 * defines a message variable in the template. The corresponding value defines the 260 * default value for that variable. When you create a message that's based on the 261 * template, you can override these defaults with message-specific and 262 * address-specific variables and values.</p> 263 */ WithDefaultSubstitutions(const Aws::String & value)264 inline PushNotificationTemplateRequest& WithDefaultSubstitutions(const Aws::String& value) { SetDefaultSubstitutions(value); return *this;} 265 266 /** 267 * <p>A JSON object that specifies the default values to use for message variables 268 * in the message template. This object is a set of key-value pairs. Each key 269 * defines a message variable in the template. The corresponding value defines the 270 * default value for that variable. When you create a message that's based on the 271 * template, you can override these defaults with message-specific and 272 * address-specific variables and values.</p> 273 */ WithDefaultSubstitutions(Aws::String && value)274 inline PushNotificationTemplateRequest& WithDefaultSubstitutions(Aws::String&& value) { SetDefaultSubstitutions(std::move(value)); return *this;} 275 276 /** 277 * <p>A JSON object that specifies the default values to use for message variables 278 * in the message template. This object is a set of key-value pairs. Each key 279 * defines a message variable in the template. The corresponding value defines the 280 * default value for that variable. When you create a message that's based on the 281 * template, you can override these defaults with message-specific and 282 * address-specific variables and values.</p> 283 */ WithDefaultSubstitutions(const char * value)284 inline PushNotificationTemplateRequest& WithDefaultSubstitutions(const char* value) { SetDefaultSubstitutions(value); return *this;} 285 286 287 /** 288 * <p>The message template to use for the GCM channel, which is used to send 289 * notifications through the Firebase Cloud Messaging (FCM), formerly Google Cloud 290 * Messaging (GCM), service. This message template overrides the default template 291 * for push notification channels (DefaultPushNotificationTemplate).</p> 292 */ GetGCM()293 inline const AndroidPushNotificationTemplate& GetGCM() const{ return m_gCM; } 294 295 /** 296 * <p>The message template to use for the GCM channel, which is used to send 297 * notifications through the Firebase Cloud Messaging (FCM), formerly Google Cloud 298 * Messaging (GCM), service. This message template overrides the default template 299 * for push notification channels (DefaultPushNotificationTemplate).</p> 300 */ GCMHasBeenSet()301 inline bool GCMHasBeenSet() const { return m_gCMHasBeenSet; } 302 303 /** 304 * <p>The message template to use for the GCM channel, which is used to send 305 * notifications through the Firebase Cloud Messaging (FCM), formerly Google Cloud 306 * Messaging (GCM), service. This message template overrides the default template 307 * for push notification channels (DefaultPushNotificationTemplate).</p> 308 */ SetGCM(const AndroidPushNotificationTemplate & value)309 inline void SetGCM(const AndroidPushNotificationTemplate& value) { m_gCMHasBeenSet = true; m_gCM = value; } 310 311 /** 312 * <p>The message template to use for the GCM channel, which is used to send 313 * notifications through the Firebase Cloud Messaging (FCM), formerly Google Cloud 314 * Messaging (GCM), service. This message template overrides the default template 315 * for push notification channels (DefaultPushNotificationTemplate).</p> 316 */ SetGCM(AndroidPushNotificationTemplate && value)317 inline void SetGCM(AndroidPushNotificationTemplate&& value) { m_gCMHasBeenSet = true; m_gCM = std::move(value); } 318 319 /** 320 * <p>The message template to use for the GCM channel, which is used to send 321 * notifications through the Firebase Cloud Messaging (FCM), formerly Google Cloud 322 * Messaging (GCM), service. This message template overrides the default template 323 * for push notification channels (DefaultPushNotificationTemplate).</p> 324 */ WithGCM(const AndroidPushNotificationTemplate & value)325 inline PushNotificationTemplateRequest& WithGCM(const AndroidPushNotificationTemplate& value) { SetGCM(value); return *this;} 326 327 /** 328 * <p>The message template to use for the GCM channel, which is used to send 329 * notifications through the Firebase Cloud Messaging (FCM), formerly Google Cloud 330 * Messaging (GCM), service. This message template overrides the default template 331 * for push notification channels (DefaultPushNotificationTemplate).</p> 332 */ WithGCM(AndroidPushNotificationTemplate && value)333 inline PushNotificationTemplateRequest& WithGCM(AndroidPushNotificationTemplate&& value) { SetGCM(std::move(value)); return *this;} 334 335 336 /** 337 * <p>The unique identifier for the recommender model to use for the message 338 * template. Amazon Pinpoint uses this value to determine how to retrieve and 339 * process data from a recommender model when it sends messages that use the 340 * template, if the template contains message variables for recommendation 341 * data.</p> 342 */ GetRecommenderId()343 inline const Aws::String& GetRecommenderId() const{ return m_recommenderId; } 344 345 /** 346 * <p>The unique identifier for the recommender model to use for the message 347 * template. Amazon Pinpoint uses this value to determine how to retrieve and 348 * process data from a recommender model when it sends messages that use the 349 * template, if the template contains message variables for recommendation 350 * data.</p> 351 */ RecommenderIdHasBeenSet()352 inline bool RecommenderIdHasBeenSet() const { return m_recommenderIdHasBeenSet; } 353 354 /** 355 * <p>The unique identifier for the recommender model to use for the message 356 * template. Amazon Pinpoint uses this value to determine how to retrieve and 357 * process data from a recommender model when it sends messages that use the 358 * template, if the template contains message variables for recommendation 359 * data.</p> 360 */ SetRecommenderId(const Aws::String & value)361 inline void SetRecommenderId(const Aws::String& value) { m_recommenderIdHasBeenSet = true; m_recommenderId = value; } 362 363 /** 364 * <p>The unique identifier for the recommender model to use for the message 365 * template. Amazon Pinpoint uses this value to determine how to retrieve and 366 * process data from a recommender model when it sends messages that use the 367 * template, if the template contains message variables for recommendation 368 * data.</p> 369 */ SetRecommenderId(Aws::String && value)370 inline void SetRecommenderId(Aws::String&& value) { m_recommenderIdHasBeenSet = true; m_recommenderId = std::move(value); } 371 372 /** 373 * <p>The unique identifier for the recommender model to use for the message 374 * template. Amazon Pinpoint uses this value to determine how to retrieve and 375 * process data from a recommender model when it sends messages that use the 376 * template, if the template contains message variables for recommendation 377 * data.</p> 378 */ SetRecommenderId(const char * value)379 inline void SetRecommenderId(const char* value) { m_recommenderIdHasBeenSet = true; m_recommenderId.assign(value); } 380 381 /** 382 * <p>The unique identifier for the recommender model to use for the message 383 * template. Amazon Pinpoint uses this value to determine how to retrieve and 384 * process data from a recommender model when it sends messages that use the 385 * template, if the template contains message variables for recommendation 386 * data.</p> 387 */ WithRecommenderId(const Aws::String & value)388 inline PushNotificationTemplateRequest& WithRecommenderId(const Aws::String& value) { SetRecommenderId(value); return *this;} 389 390 /** 391 * <p>The unique identifier for the recommender model to use for the message 392 * template. Amazon Pinpoint uses this value to determine how to retrieve and 393 * process data from a recommender model when it sends messages that use the 394 * template, if the template contains message variables for recommendation 395 * data.</p> 396 */ WithRecommenderId(Aws::String && value)397 inline PushNotificationTemplateRequest& WithRecommenderId(Aws::String&& value) { SetRecommenderId(std::move(value)); return *this;} 398 399 /** 400 * <p>The unique identifier for the recommender model to use for the message 401 * template. Amazon Pinpoint uses this value to determine how to retrieve and 402 * process data from a recommender model when it sends messages that use the 403 * template, if the template contains message variables for recommendation 404 * data.</p> 405 */ WithRecommenderId(const char * value)406 inline PushNotificationTemplateRequest& WithRecommenderId(const char* value) { SetRecommenderId(value); return *this;} 407 408 409 /** 410 * <p>A string-to-string map of key-value pairs that defines the tags to associate 411 * with the message template. Each tag consists of a required tag key and an 412 * associated tag value.</p> 413 */ GetTags()414 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const{ return m_tags; } 415 416 /** 417 * <p>A string-to-string map of key-value pairs that defines the tags to associate 418 * with the message template. Each tag consists of a required tag key and an 419 * associated tag value.</p> 420 */ TagsHasBeenSet()421 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; } 422 423 /** 424 * <p>A string-to-string map of key-value pairs that defines the tags to associate 425 * with the message template. Each tag consists of a required tag key and an 426 * associated tag value.</p> 427 */ SetTags(const Aws::Map<Aws::String,Aws::String> & value)428 inline void SetTags(const Aws::Map<Aws::String, Aws::String>& value) { m_tagsHasBeenSet = true; m_tags = value; } 429 430 /** 431 * <p>A string-to-string map of key-value pairs that defines the tags to associate 432 * with the message template. Each tag consists of a required tag key and an 433 * associated tag value.</p> 434 */ SetTags(Aws::Map<Aws::String,Aws::String> && value)435 inline void SetTags(Aws::Map<Aws::String, Aws::String>&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); } 436 437 /** 438 * <p>A string-to-string map of key-value pairs that defines the tags to associate 439 * with the message template. Each tag consists of a required tag key and an 440 * associated tag value.</p> 441 */ WithTags(const Aws::Map<Aws::String,Aws::String> & value)442 inline PushNotificationTemplateRequest& WithTags(const Aws::Map<Aws::String, Aws::String>& value) { SetTags(value); return *this;} 443 444 /** 445 * <p>A string-to-string map of key-value pairs that defines the tags to associate 446 * with the message template. Each tag consists of a required tag key and an 447 * associated tag value.</p> 448 */ WithTags(Aws::Map<Aws::String,Aws::String> && value)449 inline PushNotificationTemplateRequest& WithTags(Aws::Map<Aws::String, Aws::String>&& value) { SetTags(std::move(value)); return *this;} 450 451 /** 452 * <p>A string-to-string map of key-value pairs that defines the tags to associate 453 * with the message template. Each tag consists of a required tag key and an 454 * associated tag value.</p> 455 */ AddTags(const Aws::String & key,const Aws::String & value)456 inline PushNotificationTemplateRequest& AddTags(const Aws::String& key, const Aws::String& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, value); return *this; } 457 458 /** 459 * <p>A string-to-string map of key-value pairs that defines the tags to associate 460 * with the message template. Each tag consists of a required tag key and an 461 * associated tag value.</p> 462 */ AddTags(Aws::String && key,const Aws::String & value)463 inline PushNotificationTemplateRequest& AddTags(Aws::String&& key, const Aws::String& value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), value); return *this; } 464 465 /** 466 * <p>A string-to-string map of key-value pairs that defines the tags to associate 467 * with the message template. Each tag consists of a required tag key and an 468 * associated tag value.</p> 469 */ AddTags(const Aws::String & key,Aws::String && value)470 inline PushNotificationTemplateRequest& AddTags(const Aws::String& key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, std::move(value)); return *this; } 471 472 /** 473 * <p>A string-to-string map of key-value pairs that defines the tags to associate 474 * with the message template. Each tag consists of a required tag key and an 475 * associated tag value.</p> 476 */ AddTags(Aws::String && key,Aws::String && value)477 inline PushNotificationTemplateRequest& AddTags(Aws::String&& key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), std::move(value)); return *this; } 478 479 /** 480 * <p>A string-to-string map of key-value pairs that defines the tags to associate 481 * with the message template. Each tag consists of a required tag key and an 482 * associated tag value.</p> 483 */ AddTags(const char * key,Aws::String && value)484 inline PushNotificationTemplateRequest& AddTags(const char* key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, std::move(value)); return *this; } 485 486 /** 487 * <p>A string-to-string map of key-value pairs that defines the tags to associate 488 * with the message template. Each tag consists of a required tag key and an 489 * associated tag value.</p> 490 */ AddTags(Aws::String && key,const char * value)491 inline PushNotificationTemplateRequest& AddTags(Aws::String&& key, const char* value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), value); return *this; } 492 493 /** 494 * <p>A string-to-string map of key-value pairs that defines the tags to associate 495 * with the message template. Each tag consists of a required tag key and an 496 * associated tag value.</p> 497 */ AddTags(const char * key,const char * value)498 inline PushNotificationTemplateRequest& AddTags(const char* key, const char* value) { m_tagsHasBeenSet = true; m_tags.emplace(key, value); return *this; } 499 500 501 /** 502 * <p>A custom description of the message template.</p> 503 */ GetTemplateDescription()504 inline const Aws::String& GetTemplateDescription() const{ return m_templateDescription; } 505 506 /** 507 * <p>A custom description of the message template.</p> 508 */ TemplateDescriptionHasBeenSet()509 inline bool TemplateDescriptionHasBeenSet() const { return m_templateDescriptionHasBeenSet; } 510 511 /** 512 * <p>A custom description of the message template.</p> 513 */ SetTemplateDescription(const Aws::String & value)514 inline void SetTemplateDescription(const Aws::String& value) { m_templateDescriptionHasBeenSet = true; m_templateDescription = value; } 515 516 /** 517 * <p>A custom description of the message template.</p> 518 */ SetTemplateDescription(Aws::String && value)519 inline void SetTemplateDescription(Aws::String&& value) { m_templateDescriptionHasBeenSet = true; m_templateDescription = std::move(value); } 520 521 /** 522 * <p>A custom description of the message template.</p> 523 */ SetTemplateDescription(const char * value)524 inline void SetTemplateDescription(const char* value) { m_templateDescriptionHasBeenSet = true; m_templateDescription.assign(value); } 525 526 /** 527 * <p>A custom description of the message template.</p> 528 */ WithTemplateDescription(const Aws::String & value)529 inline PushNotificationTemplateRequest& WithTemplateDescription(const Aws::String& value) { SetTemplateDescription(value); return *this;} 530 531 /** 532 * <p>A custom description of the message template.</p> 533 */ WithTemplateDescription(Aws::String && value)534 inline PushNotificationTemplateRequest& WithTemplateDescription(Aws::String&& value) { SetTemplateDescription(std::move(value)); return *this;} 535 536 /** 537 * <p>A custom description of the message template.</p> 538 */ WithTemplateDescription(const char * value)539 inline PushNotificationTemplateRequest& WithTemplateDescription(const char* value) { SetTemplateDescription(value); return *this;} 540 541 private: 542 543 AndroidPushNotificationTemplate m_aDM; 544 bool m_aDMHasBeenSet; 545 546 APNSPushNotificationTemplate m_aPNS; 547 bool m_aPNSHasBeenSet; 548 549 AndroidPushNotificationTemplate m_baidu; 550 bool m_baiduHasBeenSet; 551 552 DefaultPushNotificationTemplate m_default; 553 bool m_defaultHasBeenSet; 554 555 Aws::String m_defaultSubstitutions; 556 bool m_defaultSubstitutionsHasBeenSet; 557 558 AndroidPushNotificationTemplate m_gCM; 559 bool m_gCMHasBeenSet; 560 561 Aws::String m_recommenderId; 562 bool m_recommenderIdHasBeenSet; 563 564 Aws::Map<Aws::String, Aws::String> m_tags; 565 bool m_tagsHasBeenSet; 566 567 Aws::String m_templateDescription; 568 bool m_templateDescriptionHasBeenSet; 569 }; 570 571 } // namespace Model 572 } // namespace Pinpoint 573 } // namespace Aws 574