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/appmesh/AppMesh_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 AppMesh 22 { 23 namespace Model 24 { 25 26 /** 27 * <p>An object that represents a local file certificate. The certificate must meet 28 * specific requirements and you must have proxy authorization enabled. For more 29 * information, see <a 30 * href="https://docs.aws.amazon.com/app-mesh/latest/userguide/tls.html#virtual-node-tls-prerequisites">Transport 31 * Layer Security (TLS)</a>.</p><p><h3>See Also:</h3> <a 32 * href="http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/ListenerTlsFileCertificate">AWS 33 * API Reference</a></p> 34 */ 35 class AWS_APPMESH_API ListenerTlsFileCertificate 36 { 37 public: 38 ListenerTlsFileCertificate(); 39 ListenerTlsFileCertificate(Aws::Utils::Json::JsonView jsonValue); 40 ListenerTlsFileCertificate& operator=(Aws::Utils::Json::JsonView jsonValue); 41 Aws::Utils::Json::JsonValue Jsonize() const; 42 43 44 /** 45 * <p>The certificate chain for the certificate.</p> 46 */ GetCertificateChain()47 inline const Aws::String& GetCertificateChain() const{ return m_certificateChain; } 48 49 /** 50 * <p>The certificate chain for the certificate.</p> 51 */ CertificateChainHasBeenSet()52 inline bool CertificateChainHasBeenSet() const { return m_certificateChainHasBeenSet; } 53 54 /** 55 * <p>The certificate chain for the certificate.</p> 56 */ SetCertificateChain(const Aws::String & value)57 inline void SetCertificateChain(const Aws::String& value) { m_certificateChainHasBeenSet = true; m_certificateChain = value; } 58 59 /** 60 * <p>The certificate chain for the certificate.</p> 61 */ SetCertificateChain(Aws::String && value)62 inline void SetCertificateChain(Aws::String&& value) { m_certificateChainHasBeenSet = true; m_certificateChain = std::move(value); } 63 64 /** 65 * <p>The certificate chain for the certificate.</p> 66 */ SetCertificateChain(const char * value)67 inline void SetCertificateChain(const char* value) { m_certificateChainHasBeenSet = true; m_certificateChain.assign(value); } 68 69 /** 70 * <p>The certificate chain for the certificate.</p> 71 */ WithCertificateChain(const Aws::String & value)72 inline ListenerTlsFileCertificate& WithCertificateChain(const Aws::String& value) { SetCertificateChain(value); return *this;} 73 74 /** 75 * <p>The certificate chain for the certificate.</p> 76 */ WithCertificateChain(Aws::String && value)77 inline ListenerTlsFileCertificate& WithCertificateChain(Aws::String&& value) { SetCertificateChain(std::move(value)); return *this;} 78 79 /** 80 * <p>The certificate chain for the certificate.</p> 81 */ WithCertificateChain(const char * value)82 inline ListenerTlsFileCertificate& WithCertificateChain(const char* value) { SetCertificateChain(value); return *this;} 83 84 85 /** 86 * <p>The private key for a certificate stored on the file system of the virtual 87 * node that the proxy is running on.</p> 88 */ GetPrivateKey()89 inline const Aws::String& GetPrivateKey() const{ return m_privateKey; } 90 91 /** 92 * <p>The private key for a certificate stored on the file system of the virtual 93 * node that the proxy is running on.</p> 94 */ PrivateKeyHasBeenSet()95 inline bool PrivateKeyHasBeenSet() const { return m_privateKeyHasBeenSet; } 96 97 /** 98 * <p>The private key for a certificate stored on the file system of the virtual 99 * node that the proxy is running on.</p> 100 */ SetPrivateKey(const Aws::String & value)101 inline void SetPrivateKey(const Aws::String& value) { m_privateKeyHasBeenSet = true; m_privateKey = value; } 102 103 /** 104 * <p>The private key for a certificate stored on the file system of the virtual 105 * node that the proxy is running on.</p> 106 */ SetPrivateKey(Aws::String && value)107 inline void SetPrivateKey(Aws::String&& value) { m_privateKeyHasBeenSet = true; m_privateKey = std::move(value); } 108 109 /** 110 * <p>The private key for a certificate stored on the file system of the virtual 111 * node that the proxy is running on.</p> 112 */ SetPrivateKey(const char * value)113 inline void SetPrivateKey(const char* value) { m_privateKeyHasBeenSet = true; m_privateKey.assign(value); } 114 115 /** 116 * <p>The private key for a certificate stored on the file system of the virtual 117 * node that the proxy is running on.</p> 118 */ WithPrivateKey(const Aws::String & value)119 inline ListenerTlsFileCertificate& WithPrivateKey(const Aws::String& value) { SetPrivateKey(value); return *this;} 120 121 /** 122 * <p>The private key for a certificate stored on the file system of the virtual 123 * node that the proxy is running on.</p> 124 */ WithPrivateKey(Aws::String && value)125 inline ListenerTlsFileCertificate& WithPrivateKey(Aws::String&& value) { SetPrivateKey(std::move(value)); return *this;} 126 127 /** 128 * <p>The private key for a certificate stored on the file system of the virtual 129 * node that the proxy is running on.</p> 130 */ WithPrivateKey(const char * value)131 inline ListenerTlsFileCertificate& WithPrivateKey(const char* value) { SetPrivateKey(value); return *this;} 132 133 private: 134 135 Aws::String m_certificateChain; 136 bool m_certificateChainHasBeenSet; 137 138 Aws::String m_privateKey; 139 bool m_privateKeyHasBeenSet; 140 }; 141 142 } // namespace Model 143 } // namespace AppMesh 144 } // namespace Aws 145