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/core/utils/memory/stl/AWSString.h> 9 #include <aws/ssm-contacts/model/ContactType.h> 10 #include <aws/ssm-contacts/model/Plan.h> 11 #include <utility> 12 13 namespace Aws 14 { 15 template<typename RESULT_TYPE> 16 class AmazonWebServiceResult; 17 18 namespace Utils 19 { 20 namespace Json 21 { 22 class JsonValue; 23 } // namespace Json 24 } // namespace Utils 25 namespace SSMContacts 26 { 27 namespace Model 28 { 29 class AWS_SSMCONTACTS_API GetContactResult 30 { 31 public: 32 GetContactResult(); 33 GetContactResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result); 34 GetContactResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result); 35 36 37 /** 38 * <p>The ARN of the contact or escalation plan.</p> 39 */ GetContactArn()40 inline const Aws::String& GetContactArn() const{ return m_contactArn; } 41 42 /** 43 * <p>The ARN of the contact or escalation plan.</p> 44 */ SetContactArn(const Aws::String & value)45 inline void SetContactArn(const Aws::String& value) { m_contactArn = value; } 46 47 /** 48 * <p>The ARN of the contact or escalation plan.</p> 49 */ SetContactArn(Aws::String && value)50 inline void SetContactArn(Aws::String&& value) { m_contactArn = std::move(value); } 51 52 /** 53 * <p>The ARN of the contact or escalation plan.</p> 54 */ SetContactArn(const char * value)55 inline void SetContactArn(const char* value) { m_contactArn.assign(value); } 56 57 /** 58 * <p>The ARN of the contact or escalation plan.</p> 59 */ WithContactArn(const Aws::String & value)60 inline GetContactResult& WithContactArn(const Aws::String& value) { SetContactArn(value); return *this;} 61 62 /** 63 * <p>The ARN of the contact or escalation plan.</p> 64 */ WithContactArn(Aws::String && value)65 inline GetContactResult& WithContactArn(Aws::String&& value) { SetContactArn(std::move(value)); return *this;} 66 67 /** 68 * <p>The ARN of the contact or escalation plan.</p> 69 */ WithContactArn(const char * value)70 inline GetContactResult& WithContactArn(const char* value) { SetContactArn(value); return *this;} 71 72 73 /** 74 * <p>The alias of the contact or escalation plan. The alias is unique and 75 * identifiable.</p> 76 */ GetAlias()77 inline const Aws::String& GetAlias() const{ return m_alias; } 78 79 /** 80 * <p>The alias of the contact or escalation plan. The alias is unique and 81 * identifiable.</p> 82 */ SetAlias(const Aws::String & value)83 inline void SetAlias(const Aws::String& value) { m_alias = value; } 84 85 /** 86 * <p>The alias of the contact or escalation plan. The alias is unique and 87 * identifiable.</p> 88 */ SetAlias(Aws::String && value)89 inline void SetAlias(Aws::String&& value) { m_alias = std::move(value); } 90 91 /** 92 * <p>The alias of the contact or escalation plan. The alias is unique and 93 * identifiable.</p> 94 */ SetAlias(const char * value)95 inline void SetAlias(const char* value) { m_alias.assign(value); } 96 97 /** 98 * <p>The alias of the contact or escalation plan. The alias is unique and 99 * identifiable.</p> 100 */ WithAlias(const Aws::String & value)101 inline GetContactResult& WithAlias(const Aws::String& value) { SetAlias(value); return *this;} 102 103 /** 104 * <p>The alias of the contact or escalation plan. The alias is unique and 105 * identifiable.</p> 106 */ WithAlias(Aws::String && value)107 inline GetContactResult& WithAlias(Aws::String&& value) { SetAlias(std::move(value)); return *this;} 108 109 /** 110 * <p>The alias of the contact or escalation plan. The alias is unique and 111 * identifiable.</p> 112 */ WithAlias(const char * value)113 inline GetContactResult& WithAlias(const char* value) { SetAlias(value); return *this;} 114 115 116 /** 117 * <p>The full name of the contact or escalation plan.</p> 118 */ GetDisplayName()119 inline const Aws::String& GetDisplayName() const{ return m_displayName; } 120 121 /** 122 * <p>The full name of the contact or escalation plan.</p> 123 */ SetDisplayName(const Aws::String & value)124 inline void SetDisplayName(const Aws::String& value) { m_displayName = value; } 125 126 /** 127 * <p>The full name of the contact or escalation plan.</p> 128 */ SetDisplayName(Aws::String && value)129 inline void SetDisplayName(Aws::String&& value) { m_displayName = std::move(value); } 130 131 /** 132 * <p>The full name of the contact or escalation plan.</p> 133 */ SetDisplayName(const char * value)134 inline void SetDisplayName(const char* value) { m_displayName.assign(value); } 135 136 /** 137 * <p>The full name of the contact or escalation plan.</p> 138 */ WithDisplayName(const Aws::String & value)139 inline GetContactResult& WithDisplayName(const Aws::String& value) { SetDisplayName(value); return *this;} 140 141 /** 142 * <p>The full name of the contact or escalation plan.</p> 143 */ WithDisplayName(Aws::String && value)144 inline GetContactResult& WithDisplayName(Aws::String&& value) { SetDisplayName(std::move(value)); return *this;} 145 146 /** 147 * <p>The full name of the contact or escalation plan.</p> 148 */ WithDisplayName(const char * value)149 inline GetContactResult& WithDisplayName(const char* value) { SetDisplayName(value); return *this;} 150 151 152 /** 153 * <p>The type of contact, either <code>PERSONAL</code> or <code>ESCALATION</code>. 154 * </p> 155 */ GetType()156 inline const ContactType& GetType() const{ return m_type; } 157 158 /** 159 * <p>The type of contact, either <code>PERSONAL</code> or <code>ESCALATION</code>. 160 * </p> 161 */ SetType(const ContactType & value)162 inline void SetType(const ContactType& value) { m_type = value; } 163 164 /** 165 * <p>The type of contact, either <code>PERSONAL</code> or <code>ESCALATION</code>. 166 * </p> 167 */ SetType(ContactType && value)168 inline void SetType(ContactType&& value) { m_type = std::move(value); } 169 170 /** 171 * <p>The type of contact, either <code>PERSONAL</code> or <code>ESCALATION</code>. 172 * </p> 173 */ WithType(const ContactType & value)174 inline GetContactResult& WithType(const ContactType& value) { SetType(value); return *this;} 175 176 /** 177 * <p>The type of contact, either <code>PERSONAL</code> or <code>ESCALATION</code>. 178 * </p> 179 */ WithType(ContactType && value)180 inline GetContactResult& WithType(ContactType&& value) { SetType(std::move(value)); return *this;} 181 182 183 /** 184 * <p>Details about the specific timing or stages and targets of the escalation 185 * plan or engagement plan.</p> 186 */ GetPlan()187 inline const Plan& GetPlan() const{ return m_plan; } 188 189 /** 190 * <p>Details about the specific timing or stages and targets of the escalation 191 * plan or engagement plan.</p> 192 */ SetPlan(const Plan & value)193 inline void SetPlan(const Plan& value) { m_plan = value; } 194 195 /** 196 * <p>Details about the specific timing or stages and targets of the escalation 197 * plan or engagement plan.</p> 198 */ SetPlan(Plan && value)199 inline void SetPlan(Plan&& value) { m_plan = std::move(value); } 200 201 /** 202 * <p>Details about the specific timing or stages and targets of the escalation 203 * plan or engagement plan.</p> 204 */ WithPlan(const Plan & value)205 inline GetContactResult& WithPlan(const Plan& value) { SetPlan(value); return *this;} 206 207 /** 208 * <p>Details about the specific timing or stages and targets of the escalation 209 * plan or engagement plan.</p> 210 */ WithPlan(Plan && value)211 inline GetContactResult& WithPlan(Plan&& value) { SetPlan(std::move(value)); return *this;} 212 213 private: 214 215 Aws::String m_contactArn; 216 217 Aws::String m_alias; 218 219 Aws::String m_displayName; 220 221 ContactType m_type; 222 223 Plan m_plan; 224 }; 225 226 } // namespace Model 227 } // namespace SSMContacts 228 } // namespace Aws 229