AWS SDK for C++

AWS SDK for C++ Version 1.11.745

Loading...
Searching...
No Matches
ClientPolicyTls.h
1
6#pragma once
7#include <aws/appmesh/AppMesh_EXPORTS.h>
8#include <aws/appmesh/model/ClientTlsCertificate.h>
9#include <aws/appmesh/model/TlsValidationContext.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11
12#include <utility>
13
14namespace Aws {
15namespace Utils {
16namespace Json {
17class JsonValue;
18class JsonView;
19} // namespace Json
20} // namespace Utils
21namespace AppMesh {
22namespace Model {
23
31 public:
32 AWS_APPMESH_API ClientPolicyTls() = default;
33 AWS_APPMESH_API ClientPolicyTls(Aws::Utils::Json::JsonView jsonValue);
35 AWS_APPMESH_API Aws::Utils::Json::JsonValue Jsonize() const;
36
38
41 inline const ClientTlsCertificate& GetCertificate() const { return m_certificate; }
42 inline bool CertificateHasBeenSet() const { return m_certificateHasBeenSet; }
43 template <typename CertificateT = ClientTlsCertificate>
44 void SetCertificate(CertificateT&& value) {
45 m_certificateHasBeenSet = true;
46 m_certificate = std::forward<CertificateT>(value);
47 }
48 template <typename CertificateT = ClientTlsCertificate>
49 ClientPolicyTls& WithCertificate(CertificateT&& value) {
50 SetCertificate(std::forward<CertificateT>(value));
51 return *this;
52 }
54
56
60 inline bool GetEnforce() const { return m_enforce; }
61 inline bool EnforceHasBeenSet() const { return m_enforceHasBeenSet; }
62 inline void SetEnforce(bool value) {
63 m_enforceHasBeenSet = true;
64 m_enforce = value;
65 }
66 inline ClientPolicyTls& WithEnforce(bool value) {
67 SetEnforce(value);
68 return *this;
69 }
71
73
76 inline const Aws::Vector<int>& GetPorts() const { return m_ports; }
77 inline bool PortsHasBeenSet() const { return m_portsHasBeenSet; }
78 template <typename PortsT = Aws::Vector<int>>
79 void SetPorts(PortsT&& value) {
80 m_portsHasBeenSet = true;
81 m_ports = std::forward<PortsT>(value);
82 }
83 template <typename PortsT = Aws::Vector<int>>
84 ClientPolicyTls& WithPorts(PortsT&& value) {
85 SetPorts(std::forward<PortsT>(value));
86 return *this;
87 }
88 inline ClientPolicyTls& AddPorts(int value) {
89 m_portsHasBeenSet = true;
90 m_ports.push_back(value);
91 return *this;
92 }
94
96
99 inline const TlsValidationContext& GetValidation() const { return m_validation; }
100 inline bool ValidationHasBeenSet() const { return m_validationHasBeenSet; }
101 template <typename ValidationT = TlsValidationContext>
102 void SetValidation(ValidationT&& value) {
103 m_validationHasBeenSet = true;
104 m_validation = std::forward<ValidationT>(value);
105 }
106 template <typename ValidationT = TlsValidationContext>
107 ClientPolicyTls& WithValidation(ValidationT&& value) {
108 SetValidation(std::forward<ValidationT>(value));
109 return *this;
110 }
112 private:
113 ClientTlsCertificate m_certificate;
114
115 bool m_enforce{false};
116
117 Aws::Vector<int> m_ports;
118
119 TlsValidationContext m_validation;
120 bool m_certificateHasBeenSet = false;
121 bool m_enforceHasBeenSet = false;
122 bool m_portsHasBeenSet = false;
123 bool m_validationHasBeenSet = false;
124};
125
126} // namespace Model
127} // namespace AppMesh
128} // namespace Aws
const ClientTlsCertificate & GetCertificate() const
void SetValidation(ValidationT &&value)
ClientPolicyTls & WithValidation(ValidationT &&value)
ClientPolicyTls & WithEnforce(bool value)
AWS_APPMESH_API ClientPolicyTls(Aws::Utils::Json::JsonView jsonValue)
const TlsValidationContext & GetValidation() const
AWS_APPMESH_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_APPMESH_API ClientPolicyTls & operator=(Aws::Utils::Json::JsonView jsonValue)
const Aws::Vector< int > & GetPorts() const
ClientPolicyTls & WithPorts(PortsT &&value)
ClientPolicyTls & WithCertificate(CertificateT &&value)
ClientPolicyTls & AddPorts(int value)
void SetCertificate(CertificateT &&value)
AWS_APPMESH_API ClientPolicyTls()=default
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue