AWS SDK for C++

AWS SDK for C++ Version 1.11.785

Loading...
Searching...
No Matches
NetworkTrafficConfig.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSVector.h>
8#include <aws/securityagent/SecurityAgent_EXPORTS.h>
9#include <aws/securityagent/model/CustomHeader.h>
10#include <aws/securityagent/model/NetworkTrafficRule.h>
11
12#include <utility>
13
14namespace Aws {
15namespace Utils {
16namespace Json {
17class JsonValue;
18class JsonView;
19} // namespace Json
20} // namespace Utils
21namespace SecurityAgent {
22namespace Model {
23
30 public:
31 AWS_SECURITYAGENT_API NetworkTrafficConfig() = default;
32 AWS_SECURITYAGENT_API NetworkTrafficConfig(Aws::Utils::Json::JsonView jsonValue);
34 AWS_SECURITYAGENT_API Aws::Utils::Json::JsonValue Jsonize() const;
35
37
40 inline const Aws::Vector<NetworkTrafficRule>& GetRules() const { return m_rules; }
41 inline bool RulesHasBeenSet() const { return m_rulesHasBeenSet; }
42 template <typename RulesT = Aws::Vector<NetworkTrafficRule>>
43 void SetRules(RulesT&& value) {
44 m_rulesHasBeenSet = true;
45 m_rules = std::forward<RulesT>(value);
46 }
47 template <typename RulesT = Aws::Vector<NetworkTrafficRule>>
49 SetRules(std::forward<RulesT>(value));
50 return *this;
51 }
52 template <typename RulesT = NetworkTrafficRule>
53 NetworkTrafficConfig& AddRules(RulesT&& value) {
54 m_rulesHasBeenSet = true;
55 m_rules.emplace_back(std::forward<RulesT>(value));
56 return *this;
57 }
59
61
64 inline const Aws::Vector<CustomHeader>& GetCustomHeaders() const { return m_customHeaders; }
65 inline bool CustomHeadersHasBeenSet() const { return m_customHeadersHasBeenSet; }
66 template <typename CustomHeadersT = Aws::Vector<CustomHeader>>
67 void SetCustomHeaders(CustomHeadersT&& value) {
68 m_customHeadersHasBeenSet = true;
69 m_customHeaders = std::forward<CustomHeadersT>(value);
70 }
71 template <typename CustomHeadersT = Aws::Vector<CustomHeader>>
72 NetworkTrafficConfig& WithCustomHeaders(CustomHeadersT&& value) {
73 SetCustomHeaders(std::forward<CustomHeadersT>(value));
74 return *this;
75 }
76 template <typename CustomHeadersT = CustomHeader>
77 NetworkTrafficConfig& AddCustomHeaders(CustomHeadersT&& value) {
78 m_customHeadersHasBeenSet = true;
79 m_customHeaders.emplace_back(std::forward<CustomHeadersT>(value));
80 return *this;
81 }
83 private:
85
86 Aws::Vector<CustomHeader> m_customHeaders;
87 bool m_rulesHasBeenSet = false;
88 bool m_customHeadersHasBeenSet = false;
89};
90
91} // namespace Model
92} // namespace SecurityAgent
93} // namespace Aws
AWS_SECURITYAGENT_API NetworkTrafficConfig & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_SECURITYAGENT_API NetworkTrafficConfig(Aws::Utils::Json::JsonView jsonValue)
const Aws::Vector< CustomHeader > & GetCustomHeaders() const
NetworkTrafficConfig & WithRules(RulesT &&value)
NetworkTrafficConfig & WithCustomHeaders(CustomHeadersT &&value)
NetworkTrafficConfig & AddRules(RulesT &&value)
AWS_SECURITYAGENT_API Aws::Utils::Json::JsonValue Jsonize() const
const Aws::Vector< NetworkTrafficRule > & GetRules() const
AWS_SECURITYAGENT_API NetworkTrafficConfig()=default
NetworkTrafficConfig & AddCustomHeaders(CustomHeadersT &&value)
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue