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/shield/Shield_EXPORTS.h> 8 #include <aws/shield/ShieldRequest.h> 9 #include <aws/core/utils/memory/stl/AWSVector.h> 10 #include <aws/shield/model/EmergencyContact.h> 11 #include <utility> 12 13 namespace Aws 14 { 15 namespace Shield 16 { 17 namespace Model 18 { 19 20 /** 21 */ 22 class AWS_SHIELD_API UpdateEmergencyContactSettingsRequest : public ShieldRequest 23 { 24 public: 25 UpdateEmergencyContactSettingsRequest(); 26 27 // Service request name is the Operation name which will send this request out, 28 // each operation should has unique request name, so that we can get operation's name from this request. 29 // Note: this is not true for response, multiple operations may have the same response name, 30 // so we can not get operation's name from response. GetServiceRequestName()31 inline virtual const char* GetServiceRequestName() const override { return "UpdateEmergencyContactSettings"; } 32 33 Aws::String SerializePayload() const override; 34 35 Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override; 36 37 38 /** 39 * <p>A list of email addresses and phone numbers that the Shield Response Team 40 * (SRT) can use to contact you if you have proactive engagement enabled, for 41 * escalations to the SRT and to initiate proactive customer support.</p> <p>If you 42 * have proactive engagement enabled, the contact list must include at least one 43 * phone number.</p> 44 */ GetEmergencyContactList()45 inline const Aws::Vector<EmergencyContact>& GetEmergencyContactList() const{ return m_emergencyContactList; } 46 47 /** 48 * <p>A list of email addresses and phone numbers that the Shield Response Team 49 * (SRT) can use to contact you if you have proactive engagement enabled, for 50 * escalations to the SRT and to initiate proactive customer support.</p> <p>If you 51 * have proactive engagement enabled, the contact list must include at least one 52 * phone number.</p> 53 */ EmergencyContactListHasBeenSet()54 inline bool EmergencyContactListHasBeenSet() const { return m_emergencyContactListHasBeenSet; } 55 56 /** 57 * <p>A list of email addresses and phone numbers that the Shield Response Team 58 * (SRT) can use to contact you if you have proactive engagement enabled, for 59 * escalations to the SRT and to initiate proactive customer support.</p> <p>If you 60 * have proactive engagement enabled, the contact list must include at least one 61 * phone number.</p> 62 */ SetEmergencyContactList(const Aws::Vector<EmergencyContact> & value)63 inline void SetEmergencyContactList(const Aws::Vector<EmergencyContact>& value) { m_emergencyContactListHasBeenSet = true; m_emergencyContactList = value; } 64 65 /** 66 * <p>A list of email addresses and phone numbers that the Shield Response Team 67 * (SRT) can use to contact you if you have proactive engagement enabled, for 68 * escalations to the SRT and to initiate proactive customer support.</p> <p>If you 69 * have proactive engagement enabled, the contact list must include at least one 70 * phone number.</p> 71 */ SetEmergencyContactList(Aws::Vector<EmergencyContact> && value)72 inline void SetEmergencyContactList(Aws::Vector<EmergencyContact>&& value) { m_emergencyContactListHasBeenSet = true; m_emergencyContactList = std::move(value); } 73 74 /** 75 * <p>A list of email addresses and phone numbers that the Shield Response Team 76 * (SRT) can use to contact you if you have proactive engagement enabled, for 77 * escalations to the SRT and to initiate proactive customer support.</p> <p>If you 78 * have proactive engagement enabled, the contact list must include at least one 79 * phone number.</p> 80 */ WithEmergencyContactList(const Aws::Vector<EmergencyContact> & value)81 inline UpdateEmergencyContactSettingsRequest& WithEmergencyContactList(const Aws::Vector<EmergencyContact>& value) { SetEmergencyContactList(value); return *this;} 82 83 /** 84 * <p>A list of email addresses and phone numbers that the Shield Response Team 85 * (SRT) can use to contact you if you have proactive engagement enabled, for 86 * escalations to the SRT and to initiate proactive customer support.</p> <p>If you 87 * have proactive engagement enabled, the contact list must include at least one 88 * phone number.</p> 89 */ WithEmergencyContactList(Aws::Vector<EmergencyContact> && value)90 inline UpdateEmergencyContactSettingsRequest& WithEmergencyContactList(Aws::Vector<EmergencyContact>&& value) { SetEmergencyContactList(std::move(value)); return *this;} 91 92 /** 93 * <p>A list of email addresses and phone numbers that the Shield Response Team 94 * (SRT) can use to contact you if you have proactive engagement enabled, for 95 * escalations to the SRT and to initiate proactive customer support.</p> <p>If you 96 * have proactive engagement enabled, the contact list must include at least one 97 * phone number.</p> 98 */ AddEmergencyContactList(const EmergencyContact & value)99 inline UpdateEmergencyContactSettingsRequest& AddEmergencyContactList(const EmergencyContact& value) { m_emergencyContactListHasBeenSet = true; m_emergencyContactList.push_back(value); return *this; } 100 101 /** 102 * <p>A list of email addresses and phone numbers that the Shield Response Team 103 * (SRT) can use to contact you if you have proactive engagement enabled, for 104 * escalations to the SRT and to initiate proactive customer support.</p> <p>If you 105 * have proactive engagement enabled, the contact list must include at least one 106 * phone number.</p> 107 */ AddEmergencyContactList(EmergencyContact && value)108 inline UpdateEmergencyContactSettingsRequest& AddEmergencyContactList(EmergencyContact&& value) { m_emergencyContactListHasBeenSet = true; m_emergencyContactList.push_back(std::move(value)); return *this; } 109 110 private: 111 112 Aws::Vector<EmergencyContact> m_emergencyContactList; 113 bool m_emergencyContactListHasBeenSet; 114 }; 115 116 } // namespace Model 117 } // namespace Shield 118 } // namespace Aws 119