AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
PolicyCondition.h
1
6#pragma once
7#include <aws/mailmanager/MailManager_EXPORTS.h>
8#include <aws/mailmanager/model/IngressStringExpression.h>
9#include <aws/mailmanager/model/IngressIpv4Expression.h>
10#include <aws/mailmanager/model/IngressIpv6Expression.h>
11#include <aws/mailmanager/model/IngressTlsProtocolExpression.h>
12#include <aws/mailmanager/model/IngressBooleanExpression.h>
13#include <utility>
14
15namespace Aws
16{
17namespace Utils
18{
19namespace Json
20{
21 class JsonValue;
22 class JsonView;
23} // namespace Json
24} // namespace Utils
25namespace MailManager
26{
27namespace Model
28{
29
37 {
38 public:
39 AWS_MAILMANAGER_API PolicyCondition() = default;
40 AWS_MAILMANAGER_API PolicyCondition(Aws::Utils::Json::JsonView jsonValue);
41 AWS_MAILMANAGER_API PolicyCondition& operator=(Aws::Utils::Json::JsonView jsonValue);
42 AWS_MAILMANAGER_API Aws::Utils::Json::JsonValue Jsonize() const;
43
44
46
51 inline const IngressStringExpression& GetStringExpression() const { return m_stringExpression; }
52 inline bool StringExpressionHasBeenSet() const { return m_stringExpressionHasBeenSet; }
53 template<typename StringExpressionT = IngressStringExpression>
54 void SetStringExpression(StringExpressionT&& value) { m_stringExpressionHasBeenSet = true; m_stringExpression = std::forward<StringExpressionT>(value); }
55 template<typename StringExpressionT = IngressStringExpression>
56 PolicyCondition& WithStringExpression(StringExpressionT&& value) { SetStringExpression(std::forward<StringExpressionT>(value)); return *this;}
58
60
65 inline const IngressIpv4Expression& GetIpExpression() const { return m_ipExpression; }
66 inline bool IpExpressionHasBeenSet() const { return m_ipExpressionHasBeenSet; }
67 template<typename IpExpressionT = IngressIpv4Expression>
68 void SetIpExpression(IpExpressionT&& value) { m_ipExpressionHasBeenSet = true; m_ipExpression = std::forward<IpExpressionT>(value); }
69 template<typename IpExpressionT = IngressIpv4Expression>
70 PolicyCondition& WithIpExpression(IpExpressionT&& value) { SetIpExpression(std::forward<IpExpressionT>(value)); return *this;}
72
74
79 inline const IngressIpv6Expression& GetIpv6Expression() const { return m_ipv6Expression; }
80 inline bool Ipv6ExpressionHasBeenSet() const { return m_ipv6ExpressionHasBeenSet; }
81 template<typename Ipv6ExpressionT = IngressIpv6Expression>
82 void SetIpv6Expression(Ipv6ExpressionT&& value) { m_ipv6ExpressionHasBeenSet = true; m_ipv6Expression = std::forward<Ipv6ExpressionT>(value); }
83 template<typename Ipv6ExpressionT = IngressIpv6Expression>
84 PolicyCondition& WithIpv6Expression(Ipv6ExpressionT&& value) { SetIpv6Expression(std::forward<Ipv6ExpressionT>(value)); return *this;}
86
88
93 inline const IngressTlsProtocolExpression& GetTlsExpression() const { return m_tlsExpression; }
94 inline bool TlsExpressionHasBeenSet() const { return m_tlsExpressionHasBeenSet; }
95 template<typename TlsExpressionT = IngressTlsProtocolExpression>
96 void SetTlsExpression(TlsExpressionT&& value) { m_tlsExpressionHasBeenSet = true; m_tlsExpression = std::forward<TlsExpressionT>(value); }
97 template<typename TlsExpressionT = IngressTlsProtocolExpression>
98 PolicyCondition& WithTlsExpression(TlsExpressionT&& value) { SetTlsExpression(std::forward<TlsExpressionT>(value)); return *this;}
100
102
107 inline const IngressBooleanExpression& GetBooleanExpression() const { return m_booleanExpression; }
108 inline bool BooleanExpressionHasBeenSet() const { return m_booleanExpressionHasBeenSet; }
109 template<typename BooleanExpressionT = IngressBooleanExpression>
110 void SetBooleanExpression(BooleanExpressionT&& value) { m_booleanExpressionHasBeenSet = true; m_booleanExpression = std::forward<BooleanExpressionT>(value); }
111 template<typename BooleanExpressionT = IngressBooleanExpression>
112 PolicyCondition& WithBooleanExpression(BooleanExpressionT&& value) { SetBooleanExpression(std::forward<BooleanExpressionT>(value)); return *this;}
114 private:
115
116 IngressStringExpression m_stringExpression;
117 bool m_stringExpressionHasBeenSet = false;
118
119 IngressIpv4Expression m_ipExpression;
120 bool m_ipExpressionHasBeenSet = false;
121
122 IngressIpv6Expression m_ipv6Expression;
123 bool m_ipv6ExpressionHasBeenSet = false;
124
125 IngressTlsProtocolExpression m_tlsExpression;
126 bool m_tlsExpressionHasBeenSet = false;
127
128 IngressBooleanExpression m_booleanExpression;
129 bool m_booleanExpressionHasBeenSet = false;
130 };
131
132} // namespace Model
133} // namespace MailManager
134} // namespace Aws
void SetIpExpression(IpExpressionT &&value)
const IngressBooleanExpression & GetBooleanExpression() const
PolicyCondition & WithIpExpression(IpExpressionT &&value)
PolicyCondition & WithStringExpression(StringExpressionT &&value)
const IngressIpv6Expression & GetIpv6Expression() const
void SetStringExpression(StringExpressionT &&value)
AWS_MAILMANAGER_API PolicyCondition(Aws::Utils::Json::JsonView jsonValue)
PolicyCondition & WithBooleanExpression(BooleanExpressionT &&value)
void SetTlsExpression(TlsExpressionT &&value)
PolicyCondition & WithTlsExpression(TlsExpressionT &&value)
PolicyCondition & WithIpv6Expression(Ipv6ExpressionT &&value)
void SetBooleanExpression(BooleanExpressionT &&value)
void SetIpv6Expression(Ipv6ExpressionT &&value)
AWS_MAILMANAGER_API PolicyCondition()=default
const IngressTlsProtocolExpression & GetTlsExpression() const
const IngressStringExpression & GetStringExpression() const
AWS_MAILMANAGER_API PolicyCondition & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_MAILMANAGER_API Aws::Utils::Json::JsonValue Jsonize() const
const IngressIpv4Expression & GetIpExpression() const
Aws::Utils::Json::JsonValue JsonValue