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/iot/IoT_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 IoT 22 { 23 namespace Model 24 { 25 26 /** 27 * <p>Describes a key pair.</p><p><h3>See Also:</h3> <a 28 * href="http://docs.aws.amazon.com/goto/WebAPI/iot-2015-05-28/KeyPair">AWS API 29 * Reference</a></p> 30 */ 31 class AWS_IOT_API KeyPair 32 { 33 public: 34 KeyPair(); 35 KeyPair(Aws::Utils::Json::JsonView jsonValue); 36 KeyPair& operator=(Aws::Utils::Json::JsonView jsonValue); 37 Aws::Utils::Json::JsonValue Jsonize() const; 38 39 40 /** 41 * <p>The public key.</p> 42 */ GetPublicKey()43 inline const Aws::String& GetPublicKey() const{ return m_publicKey; } 44 45 /** 46 * <p>The public key.</p> 47 */ PublicKeyHasBeenSet()48 inline bool PublicKeyHasBeenSet() const { return m_publicKeyHasBeenSet; } 49 50 /** 51 * <p>The public key.</p> 52 */ SetPublicKey(const Aws::String & value)53 inline void SetPublicKey(const Aws::String& value) { m_publicKeyHasBeenSet = true; m_publicKey = value; } 54 55 /** 56 * <p>The public key.</p> 57 */ SetPublicKey(Aws::String && value)58 inline void SetPublicKey(Aws::String&& value) { m_publicKeyHasBeenSet = true; m_publicKey = std::move(value); } 59 60 /** 61 * <p>The public key.</p> 62 */ SetPublicKey(const char * value)63 inline void SetPublicKey(const char* value) { m_publicKeyHasBeenSet = true; m_publicKey.assign(value); } 64 65 /** 66 * <p>The public key.</p> 67 */ WithPublicKey(const Aws::String & value)68 inline KeyPair& WithPublicKey(const Aws::String& value) { SetPublicKey(value); return *this;} 69 70 /** 71 * <p>The public key.</p> 72 */ WithPublicKey(Aws::String && value)73 inline KeyPair& WithPublicKey(Aws::String&& value) { SetPublicKey(std::move(value)); return *this;} 74 75 /** 76 * <p>The public key.</p> 77 */ WithPublicKey(const char * value)78 inline KeyPair& WithPublicKey(const char* value) { SetPublicKey(value); return *this;} 79 80 81 /** 82 * <p>The private key.</p> 83 */ GetPrivateKey()84 inline const Aws::String& GetPrivateKey() const{ return m_privateKey; } 85 86 /** 87 * <p>The private key.</p> 88 */ PrivateKeyHasBeenSet()89 inline bool PrivateKeyHasBeenSet() const { return m_privateKeyHasBeenSet; } 90 91 /** 92 * <p>The private key.</p> 93 */ SetPrivateKey(const Aws::String & value)94 inline void SetPrivateKey(const Aws::String& value) { m_privateKeyHasBeenSet = true; m_privateKey = value; } 95 96 /** 97 * <p>The private key.</p> 98 */ SetPrivateKey(Aws::String && value)99 inline void SetPrivateKey(Aws::String&& value) { m_privateKeyHasBeenSet = true; m_privateKey = std::move(value); } 100 101 /** 102 * <p>The private key.</p> 103 */ SetPrivateKey(const char * value)104 inline void SetPrivateKey(const char* value) { m_privateKeyHasBeenSet = true; m_privateKey.assign(value); } 105 106 /** 107 * <p>The private key.</p> 108 */ WithPrivateKey(const Aws::String & value)109 inline KeyPair& WithPrivateKey(const Aws::String& value) { SetPrivateKey(value); return *this;} 110 111 /** 112 * <p>The private key.</p> 113 */ WithPrivateKey(Aws::String && value)114 inline KeyPair& WithPrivateKey(Aws::String&& value) { SetPrivateKey(std::move(value)); return *this;} 115 116 /** 117 * <p>The private key.</p> 118 */ WithPrivateKey(const char * value)119 inline KeyPair& WithPrivateKey(const char* value) { SetPrivateKey(value); return *this;} 120 121 private: 122 123 Aws::String m_publicKey; 124 bool m_publicKeyHasBeenSet; 125 126 Aws::String m_privateKey; 127 bool m_privateKeyHasBeenSet; 128 }; 129 130 } // namespace Model 131 } // namespace IoT 132 } // namespace Aws 133