AWS SDK for C++

AWS SDK for C++ Version 1.11.812

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
31 public:
32 AWS_SECURITYAGENT_API NetworkTrafficConfig() = default;
33 AWS_SECURITYAGENT_API NetworkTrafficConfig(Aws::Utils::Json::JsonView jsonValue);
35 AWS_SECURITYAGENT_API Aws::Utils::Json::JsonValue Jsonize() const;
36
38
42 inline const Aws::Vector<NetworkTrafficRule>& GetRules() const { return m_rules; }
43 inline bool RulesHasBeenSet() const { return m_rulesHasBeenSet; }
44 template <typename RulesT = Aws::Vector<NetworkTrafficRule>>
45 void SetRules(RulesT&& value) {
46 m_rulesHasBeenSet = true;
47 m_rules = std::forward<RulesT>(value);
48 }
49 template <typename RulesT = Aws::Vector<NetworkTrafficRule>>
51 SetRules(std::forward<RulesT>(value));
52 return *this;
53 }
54 template <typename RulesT = NetworkTrafficRule>
55 NetworkTrafficConfig& AddRules(RulesT&& value) {
56 m_rulesHasBeenSet = true;
57 m_rules.emplace_back(std::forward<RulesT>(value));
58 return *this;
59 }
61
63
67 inline const Aws::Vector<CustomHeader>& GetCustomHeaders() const { return m_customHeaders; }
68 inline bool CustomHeadersHasBeenSet() const { return m_customHeadersHasBeenSet; }
69 template <typename CustomHeadersT = Aws::Vector<CustomHeader>>
70 void SetCustomHeaders(CustomHeadersT&& value) {
71 m_customHeadersHasBeenSet = true;
72 m_customHeaders = std::forward<CustomHeadersT>(value);
73 }
74 template <typename CustomHeadersT = Aws::Vector<CustomHeader>>
75 NetworkTrafficConfig& WithCustomHeaders(CustomHeadersT&& value) {
76 SetCustomHeaders(std::forward<CustomHeadersT>(value));
77 return *this;
78 }
79 template <typename CustomHeadersT = CustomHeader>
80 NetworkTrafficConfig& AddCustomHeaders(CustomHeadersT&& value) {
81 m_customHeadersHasBeenSet = true;
82 m_customHeaders.emplace_back(std::forward<CustomHeadersT>(value));
83 return *this;
84 }
86 private:
88
89 Aws::Vector<CustomHeader> m_customHeaders;
90 bool m_rulesHasBeenSet = false;
91 bool m_customHeadersHasBeenSet = false;
92};
93
94} // namespace Model
95} // namespace SecurityAgent
96} // 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