AWS SDK for C++

AWS SDK for C++ Version 1.11.916

Loading...
Searching...
No Matches
ECSManagedResources.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSVector.h>
8#include <aws/ecs/ECS_EXPORTS.h>
9#include <aws/ecs/model/GatewayConnection.h>
10#include <aws/ecs/model/ManagedAutoScaling.h>
11#include <aws/ecs/model/ManagedIngressPath.h>
12#include <aws/ecs/model/ManagedLogGroup.h>
13#include <aws/ecs/model/ManagedMetricAlarm.h>
14#include <aws/ecs/model/ManagedSecurityGroup.h>
15
16#include <utility>
17
18namespace Aws {
19namespace Utils {
20namespace Json {
21class JsonValue;
22class JsonView;
23} // namespace Json
24} // namespace Utils
25namespace ECS {
26namespace Model {
27
36 public:
37 AWS_ECS_API ECSManagedResources() = default;
41
43
46 inline const Aws::Vector<ManagedIngressPath>& GetIngressPaths() const { return m_ingressPaths; }
47 inline bool IngressPathsHasBeenSet() const { return m_ingressPathsHasBeenSet; }
48 template <typename IngressPathsT = Aws::Vector<ManagedIngressPath>>
49 void SetIngressPaths(IngressPathsT&& value) {
50 m_ingressPathsHasBeenSet = true;
51 m_ingressPaths = std::forward<IngressPathsT>(value);
52 }
53 template <typename IngressPathsT = Aws::Vector<ManagedIngressPath>>
54 ECSManagedResources& WithIngressPaths(IngressPathsT&& value) {
55 SetIngressPaths(std::forward<IngressPathsT>(value));
56 return *this;
57 }
58 template <typename IngressPathsT = ManagedIngressPath>
59 ECSManagedResources& AddIngressPaths(IngressPathsT&& value) {
60 m_ingressPathsHasBeenSet = true;
61 m_ingressPaths.emplace_back(std::forward<IngressPathsT>(value));
62 return *this;
63 }
65
67
70 inline const ManagedAutoScaling& GetAutoScaling() const { return m_autoScaling; }
71 inline bool AutoScalingHasBeenSet() const { return m_autoScalingHasBeenSet; }
72 template <typename AutoScalingT = ManagedAutoScaling>
73 void SetAutoScaling(AutoScalingT&& value) {
74 m_autoScalingHasBeenSet = true;
75 m_autoScaling = std::forward<AutoScalingT>(value);
76 }
77 template <typename AutoScalingT = ManagedAutoScaling>
78 ECSManagedResources& WithAutoScaling(AutoScalingT&& value) {
79 SetAutoScaling(std::forward<AutoScalingT>(value));
80 return *this;
81 }
83
85
88 inline const Aws::Vector<ManagedMetricAlarm>& GetMetricAlarms() const { return m_metricAlarms; }
89 inline bool MetricAlarmsHasBeenSet() const { return m_metricAlarmsHasBeenSet; }
90 template <typename MetricAlarmsT = Aws::Vector<ManagedMetricAlarm>>
91 void SetMetricAlarms(MetricAlarmsT&& value) {
92 m_metricAlarmsHasBeenSet = true;
93 m_metricAlarms = std::forward<MetricAlarmsT>(value);
94 }
95 template <typename MetricAlarmsT = Aws::Vector<ManagedMetricAlarm>>
96 ECSManagedResources& WithMetricAlarms(MetricAlarmsT&& value) {
97 SetMetricAlarms(std::forward<MetricAlarmsT>(value));
98 return *this;
99 }
100 template <typename MetricAlarmsT = ManagedMetricAlarm>
101 ECSManagedResources& AddMetricAlarms(MetricAlarmsT&& value) {
102 m_metricAlarmsHasBeenSet = true;
103 m_metricAlarms.emplace_back(std::forward<MetricAlarmsT>(value));
104 return *this;
105 }
107
109
112 inline const Aws::Vector<ManagedSecurityGroup>& GetServiceSecurityGroups() const { return m_serviceSecurityGroups; }
113 inline bool ServiceSecurityGroupsHasBeenSet() const { return m_serviceSecurityGroupsHasBeenSet; }
114 template <typename ServiceSecurityGroupsT = Aws::Vector<ManagedSecurityGroup>>
115 void SetServiceSecurityGroups(ServiceSecurityGroupsT&& value) {
116 m_serviceSecurityGroupsHasBeenSet = true;
117 m_serviceSecurityGroups = std::forward<ServiceSecurityGroupsT>(value);
118 }
119 template <typename ServiceSecurityGroupsT = Aws::Vector<ManagedSecurityGroup>>
120 ECSManagedResources& WithServiceSecurityGroups(ServiceSecurityGroupsT&& value) {
121 SetServiceSecurityGroups(std::forward<ServiceSecurityGroupsT>(value));
122 return *this;
123 }
124 template <typename ServiceSecurityGroupsT = ManagedSecurityGroup>
125 ECSManagedResources& AddServiceSecurityGroups(ServiceSecurityGroupsT&& value) {
126 m_serviceSecurityGroupsHasBeenSet = true;
127 m_serviceSecurityGroups.emplace_back(std::forward<ServiceSecurityGroupsT>(value));
128 return *this;
129 }
131
133
136 inline const Aws::Vector<ManagedLogGroup>& GetLogGroups() const { return m_logGroups; }
137 inline bool LogGroupsHasBeenSet() const { return m_logGroupsHasBeenSet; }
138 template <typename LogGroupsT = Aws::Vector<ManagedLogGroup>>
139 void SetLogGroups(LogGroupsT&& value) {
140 m_logGroupsHasBeenSet = true;
141 m_logGroups = std::forward<LogGroupsT>(value);
142 }
143 template <typename LogGroupsT = Aws::Vector<ManagedLogGroup>>
144 ECSManagedResources& WithLogGroups(LogGroupsT&& value) {
145 SetLogGroups(std::forward<LogGroupsT>(value));
146 return *this;
147 }
148 template <typename LogGroupsT = ManagedLogGroup>
149 ECSManagedResources& AddLogGroups(LogGroupsT&& value) {
150 m_logGroupsHasBeenSet = true;
151 m_logGroups.emplace_back(std::forward<LogGroupsT>(value));
152 return *this;
153 }
155
157
162 inline const Aws::Vector<GatewayConnection>& GetGatewayConnections() const { return m_gatewayConnections; }
163 inline bool GatewayConnectionsHasBeenSet() const { return m_gatewayConnectionsHasBeenSet; }
164 template <typename GatewayConnectionsT = Aws::Vector<GatewayConnection>>
165 void SetGatewayConnections(GatewayConnectionsT&& value) {
166 m_gatewayConnectionsHasBeenSet = true;
167 m_gatewayConnections = std::forward<GatewayConnectionsT>(value);
168 }
169 template <typename GatewayConnectionsT = Aws::Vector<GatewayConnection>>
170 ECSManagedResources& WithGatewayConnections(GatewayConnectionsT&& value) {
171 SetGatewayConnections(std::forward<GatewayConnectionsT>(value));
172 return *this;
173 }
174 template <typename GatewayConnectionsT = GatewayConnection>
175 ECSManagedResources& AddGatewayConnections(GatewayConnectionsT&& value) {
176 m_gatewayConnectionsHasBeenSet = true;
177 m_gatewayConnections.emplace_back(std::forward<GatewayConnectionsT>(value));
178 return *this;
179 }
181 private:
182 Aws::Vector<ManagedIngressPath> m_ingressPaths;
183
184 ManagedAutoScaling m_autoScaling;
185
186 Aws::Vector<ManagedMetricAlarm> m_metricAlarms;
187
188 Aws::Vector<ManagedSecurityGroup> m_serviceSecurityGroups;
189
191
192 Aws::Vector<GatewayConnection> m_gatewayConnections;
193 bool m_ingressPathsHasBeenSet = false;
194 bool m_autoScalingHasBeenSet = false;
195 bool m_metricAlarmsHasBeenSet = false;
196 bool m_serviceSecurityGroupsHasBeenSet = false;
197 bool m_logGroupsHasBeenSet = false;
198 bool m_gatewayConnectionsHasBeenSet = false;
199};
200
201} // namespace Model
202} // namespace ECS
203} // namespace Aws
const ManagedAutoScaling & GetAutoScaling() const
ECSManagedResources & WithAutoScaling(AutoScalingT &&value)
const Aws::Vector< ManagedIngressPath > & GetIngressPaths() const
AWS_ECS_API ECSManagedResources & operator=(Aws::Utils::Json::JsonView jsonValue)
ECSManagedResources & AddServiceSecurityGroups(ServiceSecurityGroupsT &&value)
void SetMetricAlarms(MetricAlarmsT &&value)
ECSManagedResources & AddLogGroups(LogGroupsT &&value)
AWS_ECS_API ECSManagedResources(Aws::Utils::Json::JsonView jsonValue)
void SetIngressPaths(IngressPathsT &&value)
void SetServiceSecurityGroups(ServiceSecurityGroupsT &&value)
ECSManagedResources & WithIngressPaths(IngressPathsT &&value)
const Aws::Vector< ManagedMetricAlarm > & GetMetricAlarms() const
void SetAutoScaling(AutoScalingT &&value)
ECSManagedResources & AddMetricAlarms(MetricAlarmsT &&value)
ECSManagedResources & WithGatewayConnections(GatewayConnectionsT &&value)
ECSManagedResources & AddGatewayConnections(GatewayConnectionsT &&value)
const Aws::Vector< ManagedLogGroup > & GetLogGroups() const
const Aws::Vector< ManagedSecurityGroup > & GetServiceSecurityGroups() const
ECSManagedResources & WithMetricAlarms(MetricAlarmsT &&value)
ECSManagedResources & AddIngressPaths(IngressPathsT &&value)
void SetGatewayConnections(GatewayConnectionsT &&value)
AWS_ECS_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_ECS_API ECSManagedResources()=default
ECSManagedResources & WithLogGroups(LogGroupsT &&value)
const Aws::Vector< GatewayConnection > & GetGatewayConnections() const
ECSManagedResources & WithServiceSecurityGroups(ServiceSecurityGroupsT &&value)
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue