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/core/utils/memory/stl/AWSString.h> 9 #include <utility> 10 11 namespace Aws 12 { 13 namespace Utils 14 { 15 namespace Json 16 { 17 class JsonValue; 18 class JsonView; 19 } // namespace Json 20 } // namespace Utils 21 namespace Pinpoint 22 { 23 namespace Model 24 { 25 26 /** 27 * <p>Specifies the status and settings of the APNs (Apple Push Notification 28 * service) VoIP channel for an application.</p><p><h3>See Also:</h3> <a 29 * href="http://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/APNSVoipChannelRequest">AWS 30 * API Reference</a></p> 31 */ 32 class AWS_PINPOINT_API APNSVoipChannelRequest 33 { 34 public: 35 APNSVoipChannelRequest(); 36 APNSVoipChannelRequest(Aws::Utils::Json::JsonView jsonValue); 37 APNSVoipChannelRequest& operator=(Aws::Utils::Json::JsonView jsonValue); 38 Aws::Utils::Json::JsonValue Jsonize() const; 39 40 41 /** 42 * <p>The bundle identifier that's assigned to your iOS app. This identifier is 43 * used for APNs tokens.</p> 44 */ GetBundleId()45 inline const Aws::String& GetBundleId() const{ return m_bundleId; } 46 47 /** 48 * <p>The bundle identifier that's assigned to your iOS app. This identifier is 49 * used for APNs tokens.</p> 50 */ BundleIdHasBeenSet()51 inline bool BundleIdHasBeenSet() const { return m_bundleIdHasBeenSet; } 52 53 /** 54 * <p>The bundle identifier that's assigned to your iOS app. This identifier is 55 * used for APNs tokens.</p> 56 */ SetBundleId(const Aws::String & value)57 inline void SetBundleId(const Aws::String& value) { m_bundleIdHasBeenSet = true; m_bundleId = value; } 58 59 /** 60 * <p>The bundle identifier that's assigned to your iOS app. This identifier is 61 * used for APNs tokens.</p> 62 */ SetBundleId(Aws::String && value)63 inline void SetBundleId(Aws::String&& value) { m_bundleIdHasBeenSet = true; m_bundleId = std::move(value); } 64 65 /** 66 * <p>The bundle identifier that's assigned to your iOS app. This identifier is 67 * used for APNs tokens.</p> 68 */ SetBundleId(const char * value)69 inline void SetBundleId(const char* value) { m_bundleIdHasBeenSet = true; m_bundleId.assign(value); } 70 71 /** 72 * <p>The bundle identifier that's assigned to your iOS app. This identifier is 73 * used for APNs tokens.</p> 74 */ WithBundleId(const Aws::String & value)75 inline APNSVoipChannelRequest& WithBundleId(const Aws::String& value) { SetBundleId(value); return *this;} 76 77 /** 78 * <p>The bundle identifier that's assigned to your iOS app. This identifier is 79 * used for APNs tokens.</p> 80 */ WithBundleId(Aws::String && value)81 inline APNSVoipChannelRequest& WithBundleId(Aws::String&& value) { SetBundleId(std::move(value)); return *this;} 82 83 /** 84 * <p>The bundle identifier that's assigned to your iOS app. This identifier is 85 * used for APNs tokens.</p> 86 */ WithBundleId(const char * value)87 inline APNSVoipChannelRequest& WithBundleId(const char* value) { SetBundleId(value); return *this;} 88 89 90 /** 91 * <p>The APNs client certificate that you received from Apple, if you want Amazon 92 * Pinpoint to communicate with APNs by using an APNs certificate.</p> 93 */ GetCertificate()94 inline const Aws::String& GetCertificate() const{ return m_certificate; } 95 96 /** 97 * <p>The APNs client certificate that you received from Apple, if you want Amazon 98 * Pinpoint to communicate with APNs by using an APNs certificate.</p> 99 */ CertificateHasBeenSet()100 inline bool CertificateHasBeenSet() const { return m_certificateHasBeenSet; } 101 102 /** 103 * <p>The APNs client certificate that you received from Apple, if you want Amazon 104 * Pinpoint to communicate with APNs by using an APNs certificate.</p> 105 */ SetCertificate(const Aws::String & value)106 inline void SetCertificate(const Aws::String& value) { m_certificateHasBeenSet = true; m_certificate = value; } 107 108 /** 109 * <p>The APNs client certificate that you received from Apple, if you want Amazon 110 * Pinpoint to communicate with APNs by using an APNs certificate.</p> 111 */ SetCertificate(Aws::String && value)112 inline void SetCertificate(Aws::String&& value) { m_certificateHasBeenSet = true; m_certificate = std::move(value); } 113 114 /** 115 * <p>The APNs client certificate that you received from Apple, if you want Amazon 116 * Pinpoint to communicate with APNs by using an APNs certificate.</p> 117 */ SetCertificate(const char * value)118 inline void SetCertificate(const char* value) { m_certificateHasBeenSet = true; m_certificate.assign(value); } 119 120 /** 121 * <p>The APNs client certificate that you received from Apple, if you want Amazon 122 * Pinpoint to communicate with APNs by using an APNs certificate.</p> 123 */ WithCertificate(const Aws::String & value)124 inline APNSVoipChannelRequest& WithCertificate(const Aws::String& value) { SetCertificate(value); return *this;} 125 126 /** 127 * <p>The APNs client certificate that you received from Apple, if you want Amazon 128 * Pinpoint to communicate with APNs by using an APNs certificate.</p> 129 */ WithCertificate(Aws::String && value)130 inline APNSVoipChannelRequest& WithCertificate(Aws::String&& value) { SetCertificate(std::move(value)); return *this;} 131 132 /** 133 * <p>The APNs client certificate that you received from Apple, if you want Amazon 134 * Pinpoint to communicate with APNs by using an APNs certificate.</p> 135 */ WithCertificate(const char * value)136 inline APNSVoipChannelRequest& WithCertificate(const char* value) { SetCertificate(value); return *this;} 137 138 139 /** 140 * <p>The default authentication method that you want Amazon Pinpoint to use when 141 * authenticating with APNs, key or certificate.</p> 142 */ GetDefaultAuthenticationMethod()143 inline const Aws::String& GetDefaultAuthenticationMethod() const{ return m_defaultAuthenticationMethod; } 144 145 /** 146 * <p>The default authentication method that you want Amazon Pinpoint to use when 147 * authenticating with APNs, key or certificate.</p> 148 */ DefaultAuthenticationMethodHasBeenSet()149 inline bool DefaultAuthenticationMethodHasBeenSet() const { return m_defaultAuthenticationMethodHasBeenSet; } 150 151 /** 152 * <p>The default authentication method that you want Amazon Pinpoint to use when 153 * authenticating with APNs, key or certificate.</p> 154 */ SetDefaultAuthenticationMethod(const Aws::String & value)155 inline void SetDefaultAuthenticationMethod(const Aws::String& value) { m_defaultAuthenticationMethodHasBeenSet = true; m_defaultAuthenticationMethod = value; } 156 157 /** 158 * <p>The default authentication method that you want Amazon Pinpoint to use when 159 * authenticating with APNs, key or certificate.</p> 160 */ SetDefaultAuthenticationMethod(Aws::String && value)161 inline void SetDefaultAuthenticationMethod(Aws::String&& value) { m_defaultAuthenticationMethodHasBeenSet = true; m_defaultAuthenticationMethod = std::move(value); } 162 163 /** 164 * <p>The default authentication method that you want Amazon Pinpoint to use when 165 * authenticating with APNs, key or certificate.</p> 166 */ SetDefaultAuthenticationMethod(const char * value)167 inline void SetDefaultAuthenticationMethod(const char* value) { m_defaultAuthenticationMethodHasBeenSet = true; m_defaultAuthenticationMethod.assign(value); } 168 169 /** 170 * <p>The default authentication method that you want Amazon Pinpoint to use when 171 * authenticating with APNs, key or certificate.</p> 172 */ WithDefaultAuthenticationMethod(const Aws::String & value)173 inline APNSVoipChannelRequest& WithDefaultAuthenticationMethod(const Aws::String& value) { SetDefaultAuthenticationMethod(value); return *this;} 174 175 /** 176 * <p>The default authentication method that you want Amazon Pinpoint to use when 177 * authenticating with APNs, key or certificate.</p> 178 */ WithDefaultAuthenticationMethod(Aws::String && value)179 inline APNSVoipChannelRequest& WithDefaultAuthenticationMethod(Aws::String&& value) { SetDefaultAuthenticationMethod(std::move(value)); return *this;} 180 181 /** 182 * <p>The default authentication method that you want Amazon Pinpoint to use when 183 * authenticating with APNs, key or certificate.</p> 184 */ WithDefaultAuthenticationMethod(const char * value)185 inline APNSVoipChannelRequest& WithDefaultAuthenticationMethod(const char* value) { SetDefaultAuthenticationMethod(value); return *this;} 186 187 188 /** 189 * <p>Specifies whether to enable the APNs VoIP channel for the application.</p> 190 */ GetEnabled()191 inline bool GetEnabled() const{ return m_enabled; } 192 193 /** 194 * <p>Specifies whether to enable the APNs VoIP channel for the application.</p> 195 */ EnabledHasBeenSet()196 inline bool EnabledHasBeenSet() const { return m_enabledHasBeenSet; } 197 198 /** 199 * <p>Specifies whether to enable the APNs VoIP channel for the application.</p> 200 */ SetEnabled(bool value)201 inline void SetEnabled(bool value) { m_enabledHasBeenSet = true; m_enabled = value; } 202 203 /** 204 * <p>Specifies whether to enable the APNs VoIP channel for the application.</p> 205 */ WithEnabled(bool value)206 inline APNSVoipChannelRequest& WithEnabled(bool value) { SetEnabled(value); return *this;} 207 208 209 /** 210 * <p>The private key for the APNs client certificate that you want Amazon Pinpoint 211 * to use to communicate with APNs.</p> 212 */ GetPrivateKey()213 inline const Aws::String& GetPrivateKey() const{ return m_privateKey; } 214 215 /** 216 * <p>The private key for the APNs client certificate that you want Amazon Pinpoint 217 * to use to communicate with APNs.</p> 218 */ PrivateKeyHasBeenSet()219 inline bool PrivateKeyHasBeenSet() const { return m_privateKeyHasBeenSet; } 220 221 /** 222 * <p>The private key for the APNs client certificate that you want Amazon Pinpoint 223 * to use to communicate with APNs.</p> 224 */ SetPrivateKey(const Aws::String & value)225 inline void SetPrivateKey(const Aws::String& value) { m_privateKeyHasBeenSet = true; m_privateKey = value; } 226 227 /** 228 * <p>The private key for the APNs client certificate that you want Amazon Pinpoint 229 * to use to communicate with APNs.</p> 230 */ SetPrivateKey(Aws::String && value)231 inline void SetPrivateKey(Aws::String&& value) { m_privateKeyHasBeenSet = true; m_privateKey = std::move(value); } 232 233 /** 234 * <p>The private key for the APNs client certificate that you want Amazon Pinpoint 235 * to use to communicate with APNs.</p> 236 */ SetPrivateKey(const char * value)237 inline void SetPrivateKey(const char* value) { m_privateKeyHasBeenSet = true; m_privateKey.assign(value); } 238 239 /** 240 * <p>The private key for the APNs client certificate that you want Amazon Pinpoint 241 * to use to communicate with APNs.</p> 242 */ WithPrivateKey(const Aws::String & value)243 inline APNSVoipChannelRequest& WithPrivateKey(const Aws::String& value) { SetPrivateKey(value); return *this;} 244 245 /** 246 * <p>The private key for the APNs client certificate that you want Amazon Pinpoint 247 * to use to communicate with APNs.</p> 248 */ WithPrivateKey(Aws::String && value)249 inline APNSVoipChannelRequest& WithPrivateKey(Aws::String&& value) { SetPrivateKey(std::move(value)); return *this;} 250 251 /** 252 * <p>The private key for the APNs client certificate that you want Amazon Pinpoint 253 * to use to communicate with APNs.</p> 254 */ WithPrivateKey(const char * value)255 inline APNSVoipChannelRequest& WithPrivateKey(const char* value) { SetPrivateKey(value); return *this;} 256 257 258 /** 259 * <p>The identifier that's assigned to your Apple developer account team. This 260 * identifier is used for APNs tokens.</p> 261 */ GetTeamId()262 inline const Aws::String& GetTeamId() const{ return m_teamId; } 263 264 /** 265 * <p>The identifier that's assigned to your Apple developer account team. This 266 * identifier is used for APNs tokens.</p> 267 */ TeamIdHasBeenSet()268 inline bool TeamIdHasBeenSet() const { return m_teamIdHasBeenSet; } 269 270 /** 271 * <p>The identifier that's assigned to your Apple developer account team. This 272 * identifier is used for APNs tokens.</p> 273 */ SetTeamId(const Aws::String & value)274 inline void SetTeamId(const Aws::String& value) { m_teamIdHasBeenSet = true; m_teamId = value; } 275 276 /** 277 * <p>The identifier that's assigned to your Apple developer account team. This 278 * identifier is used for APNs tokens.</p> 279 */ SetTeamId(Aws::String && value)280 inline void SetTeamId(Aws::String&& value) { m_teamIdHasBeenSet = true; m_teamId = std::move(value); } 281 282 /** 283 * <p>The identifier that's assigned to your Apple developer account team. This 284 * identifier is used for APNs tokens.</p> 285 */ SetTeamId(const char * value)286 inline void SetTeamId(const char* value) { m_teamIdHasBeenSet = true; m_teamId.assign(value); } 287 288 /** 289 * <p>The identifier that's assigned to your Apple developer account team. This 290 * identifier is used for APNs tokens.</p> 291 */ WithTeamId(const Aws::String & value)292 inline APNSVoipChannelRequest& WithTeamId(const Aws::String& value) { SetTeamId(value); return *this;} 293 294 /** 295 * <p>The identifier that's assigned to your Apple developer account team. This 296 * identifier is used for APNs tokens.</p> 297 */ WithTeamId(Aws::String && value)298 inline APNSVoipChannelRequest& WithTeamId(Aws::String&& value) { SetTeamId(std::move(value)); return *this;} 299 300 /** 301 * <p>The identifier that's assigned to your Apple developer account team. This 302 * identifier is used for APNs tokens.</p> 303 */ WithTeamId(const char * value)304 inline APNSVoipChannelRequest& WithTeamId(const char* value) { SetTeamId(value); return *this;} 305 306 307 /** 308 * <p>The authentication key to use for APNs tokens.</p> 309 */ GetTokenKey()310 inline const Aws::String& GetTokenKey() const{ return m_tokenKey; } 311 312 /** 313 * <p>The authentication key to use for APNs tokens.</p> 314 */ TokenKeyHasBeenSet()315 inline bool TokenKeyHasBeenSet() const { return m_tokenKeyHasBeenSet; } 316 317 /** 318 * <p>The authentication key to use for APNs tokens.</p> 319 */ SetTokenKey(const Aws::String & value)320 inline void SetTokenKey(const Aws::String& value) { m_tokenKeyHasBeenSet = true; m_tokenKey = value; } 321 322 /** 323 * <p>The authentication key to use for APNs tokens.</p> 324 */ SetTokenKey(Aws::String && value)325 inline void SetTokenKey(Aws::String&& value) { m_tokenKeyHasBeenSet = true; m_tokenKey = std::move(value); } 326 327 /** 328 * <p>The authentication key to use for APNs tokens.</p> 329 */ SetTokenKey(const char * value)330 inline void SetTokenKey(const char* value) { m_tokenKeyHasBeenSet = true; m_tokenKey.assign(value); } 331 332 /** 333 * <p>The authentication key to use for APNs tokens.</p> 334 */ WithTokenKey(const Aws::String & value)335 inline APNSVoipChannelRequest& WithTokenKey(const Aws::String& value) { SetTokenKey(value); return *this;} 336 337 /** 338 * <p>The authentication key to use for APNs tokens.</p> 339 */ WithTokenKey(Aws::String && value)340 inline APNSVoipChannelRequest& WithTokenKey(Aws::String&& value) { SetTokenKey(std::move(value)); return *this;} 341 342 /** 343 * <p>The authentication key to use for APNs tokens.</p> 344 */ WithTokenKey(const char * value)345 inline APNSVoipChannelRequest& WithTokenKey(const char* value) { SetTokenKey(value); return *this;} 346 347 348 /** 349 * <p>The key identifier that's assigned to your APNs signing key, if you want 350 * Amazon Pinpoint to communicate with APNs by using APNs tokens.</p> 351 */ GetTokenKeyId()352 inline const Aws::String& GetTokenKeyId() const{ return m_tokenKeyId; } 353 354 /** 355 * <p>The key identifier that's assigned to your APNs signing key, if you want 356 * Amazon Pinpoint to communicate with APNs by using APNs tokens.</p> 357 */ TokenKeyIdHasBeenSet()358 inline bool TokenKeyIdHasBeenSet() const { return m_tokenKeyIdHasBeenSet; } 359 360 /** 361 * <p>The key identifier that's assigned to your APNs signing key, if you want 362 * Amazon Pinpoint to communicate with APNs by using APNs tokens.</p> 363 */ SetTokenKeyId(const Aws::String & value)364 inline void SetTokenKeyId(const Aws::String& value) { m_tokenKeyIdHasBeenSet = true; m_tokenKeyId = value; } 365 366 /** 367 * <p>The key identifier that's assigned to your APNs signing key, if you want 368 * Amazon Pinpoint to communicate with APNs by using APNs tokens.</p> 369 */ SetTokenKeyId(Aws::String && value)370 inline void SetTokenKeyId(Aws::String&& value) { m_tokenKeyIdHasBeenSet = true; m_tokenKeyId = std::move(value); } 371 372 /** 373 * <p>The key identifier that's assigned to your APNs signing key, if you want 374 * Amazon Pinpoint to communicate with APNs by using APNs tokens.</p> 375 */ SetTokenKeyId(const char * value)376 inline void SetTokenKeyId(const char* value) { m_tokenKeyIdHasBeenSet = true; m_tokenKeyId.assign(value); } 377 378 /** 379 * <p>The key identifier that's assigned to your APNs signing key, if you want 380 * Amazon Pinpoint to communicate with APNs by using APNs tokens.</p> 381 */ WithTokenKeyId(const Aws::String & value)382 inline APNSVoipChannelRequest& WithTokenKeyId(const Aws::String& value) { SetTokenKeyId(value); return *this;} 383 384 /** 385 * <p>The key identifier that's assigned to your APNs signing key, if you want 386 * Amazon Pinpoint to communicate with APNs by using APNs tokens.</p> 387 */ WithTokenKeyId(Aws::String && value)388 inline APNSVoipChannelRequest& WithTokenKeyId(Aws::String&& value) { SetTokenKeyId(std::move(value)); return *this;} 389 390 /** 391 * <p>The key identifier that's assigned to your APNs signing key, if you want 392 * Amazon Pinpoint to communicate with APNs by using APNs tokens.</p> 393 */ WithTokenKeyId(const char * value)394 inline APNSVoipChannelRequest& WithTokenKeyId(const char* value) { SetTokenKeyId(value); return *this;} 395 396 private: 397 398 Aws::String m_bundleId; 399 bool m_bundleIdHasBeenSet; 400 401 Aws::String m_certificate; 402 bool m_certificateHasBeenSet; 403 404 Aws::String m_defaultAuthenticationMethod; 405 bool m_defaultAuthenticationMethodHasBeenSet; 406 407 bool m_enabled; 408 bool m_enabledHasBeenSet; 409 410 Aws::String m_privateKey; 411 bool m_privateKeyHasBeenSet; 412 413 Aws::String m_teamId; 414 bool m_teamIdHasBeenSet; 415 416 Aws::String m_tokenKey; 417 bool m_tokenKeyHasBeenSet; 418 419 Aws::String m_tokenKeyId; 420 bool m_tokenKeyIdHasBeenSet; 421 }; 422 423 } // namespace Model 424 } // namespace Pinpoint 425 } // namespace Aws 426