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/ssm-contacts/SSMContacts_EXPORTS.h> 8 #include <aws/ssm-contacts/SSMContactsRequest.h> 9 #include <aws/core/utils/memory/stl/AWSString.h> 10 #include <aws/ssm-contacts/model/Plan.h> 11 #include <utility> 12 13 namespace Aws 14 { 15 namespace SSMContacts 16 { 17 namespace Model 18 { 19 20 /** 21 */ 22 class AWS_SSMCONTACTS_API UpdateContactRequest : public SSMContactsRequest 23 { 24 public: 25 UpdateContactRequest(); 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 "UpdateContact"; } 32 33 Aws::String SerializePayload() const override; 34 35 Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override; 36 37 38 /** 39 * <p>The Amazon Resource Name (ARN) of the contact or escalation plan you're 40 * updating.</p> 41 */ GetContactId()42 inline const Aws::String& GetContactId() const{ return m_contactId; } 43 44 /** 45 * <p>The Amazon Resource Name (ARN) of the contact or escalation plan you're 46 * updating.</p> 47 */ ContactIdHasBeenSet()48 inline bool ContactIdHasBeenSet() const { return m_contactIdHasBeenSet; } 49 50 /** 51 * <p>The Amazon Resource Name (ARN) of the contact or escalation plan you're 52 * updating.</p> 53 */ SetContactId(const Aws::String & value)54 inline void SetContactId(const Aws::String& value) { m_contactIdHasBeenSet = true; m_contactId = value; } 55 56 /** 57 * <p>The Amazon Resource Name (ARN) of the contact or escalation plan you're 58 * updating.</p> 59 */ SetContactId(Aws::String && value)60 inline void SetContactId(Aws::String&& value) { m_contactIdHasBeenSet = true; m_contactId = std::move(value); } 61 62 /** 63 * <p>The Amazon Resource Name (ARN) of the contact or escalation plan you're 64 * updating.</p> 65 */ SetContactId(const char * value)66 inline void SetContactId(const char* value) { m_contactIdHasBeenSet = true; m_contactId.assign(value); } 67 68 /** 69 * <p>The Amazon Resource Name (ARN) of the contact or escalation plan you're 70 * updating.</p> 71 */ WithContactId(const Aws::String & value)72 inline UpdateContactRequest& WithContactId(const Aws::String& value) { SetContactId(value); return *this;} 73 74 /** 75 * <p>The Amazon Resource Name (ARN) of the contact or escalation plan you're 76 * updating.</p> 77 */ WithContactId(Aws::String && value)78 inline UpdateContactRequest& WithContactId(Aws::String&& value) { SetContactId(std::move(value)); return *this;} 79 80 /** 81 * <p>The Amazon Resource Name (ARN) of the contact or escalation plan you're 82 * updating.</p> 83 */ WithContactId(const char * value)84 inline UpdateContactRequest& WithContactId(const char* value) { SetContactId(value); return *this;} 85 86 87 /** 88 * <p>The full name of the contact or escalation plan.</p> 89 */ GetDisplayName()90 inline const Aws::String& GetDisplayName() const{ return m_displayName; } 91 92 /** 93 * <p>The full name of the contact or escalation plan.</p> 94 */ DisplayNameHasBeenSet()95 inline bool DisplayNameHasBeenSet() const { return m_displayNameHasBeenSet; } 96 97 /** 98 * <p>The full name of the contact or escalation plan.</p> 99 */ SetDisplayName(const Aws::String & value)100 inline void SetDisplayName(const Aws::String& value) { m_displayNameHasBeenSet = true; m_displayName = value; } 101 102 /** 103 * <p>The full name of the contact or escalation plan.</p> 104 */ SetDisplayName(Aws::String && value)105 inline void SetDisplayName(Aws::String&& value) { m_displayNameHasBeenSet = true; m_displayName = std::move(value); } 106 107 /** 108 * <p>The full name of the contact or escalation plan.</p> 109 */ SetDisplayName(const char * value)110 inline void SetDisplayName(const char* value) { m_displayNameHasBeenSet = true; m_displayName.assign(value); } 111 112 /** 113 * <p>The full name of the contact or escalation plan.</p> 114 */ WithDisplayName(const Aws::String & value)115 inline UpdateContactRequest& WithDisplayName(const Aws::String& value) { SetDisplayName(value); return *this;} 116 117 /** 118 * <p>The full name of the contact or escalation plan.</p> 119 */ WithDisplayName(Aws::String && value)120 inline UpdateContactRequest& WithDisplayName(Aws::String&& value) { SetDisplayName(std::move(value)); return *this;} 121 122 /** 123 * <p>The full name of the contact or escalation plan.</p> 124 */ WithDisplayName(const char * value)125 inline UpdateContactRequest& WithDisplayName(const char* value) { SetDisplayName(value); return *this;} 126 127 128 /** 129 * <p>A list of stages. A contact has an engagement plan with stages for specified 130 * contact channels. An escalation plan uses these stages to contact specified 131 * contacts. </p> 132 */ GetPlan()133 inline const Plan& GetPlan() const{ return m_plan; } 134 135 /** 136 * <p>A list of stages. A contact has an engagement plan with stages for specified 137 * contact channels. An escalation plan uses these stages to contact specified 138 * contacts. </p> 139 */ PlanHasBeenSet()140 inline bool PlanHasBeenSet() const { return m_planHasBeenSet; } 141 142 /** 143 * <p>A list of stages. A contact has an engagement plan with stages for specified 144 * contact channels. An escalation plan uses these stages to contact specified 145 * contacts. </p> 146 */ SetPlan(const Plan & value)147 inline void SetPlan(const Plan& value) { m_planHasBeenSet = true; m_plan = value; } 148 149 /** 150 * <p>A list of stages. A contact has an engagement plan with stages for specified 151 * contact channels. An escalation plan uses these stages to contact specified 152 * contacts. </p> 153 */ SetPlan(Plan && value)154 inline void SetPlan(Plan&& value) { m_planHasBeenSet = true; m_plan = std::move(value); } 155 156 /** 157 * <p>A list of stages. A contact has an engagement plan with stages for specified 158 * contact channels. An escalation plan uses these stages to contact specified 159 * contacts. </p> 160 */ WithPlan(const Plan & value)161 inline UpdateContactRequest& WithPlan(const Plan& value) { SetPlan(value); return *this;} 162 163 /** 164 * <p>A list of stages. A contact has an engagement plan with stages for specified 165 * contact channels. An escalation plan uses these stages to contact specified 166 * contacts. </p> 167 */ WithPlan(Plan && value)168 inline UpdateContactRequest& WithPlan(Plan&& value) { SetPlan(std::move(value)); return *this;} 169 170 private: 171 172 Aws::String m_contactId; 173 bool m_contactIdHasBeenSet; 174 175 Aws::String m_displayName; 176 bool m_displayNameHasBeenSet; 177 178 Plan m_plan; 179 bool m_planHasBeenSet; 180 }; 181 182 } // namespace Model 183 } // namespace SSMContacts 184 } // namespace Aws 185