AWS SDK for C++

AWS SDK for C++ Version 1.11.440

Loading...
Searching...
No Matches
CreateFlowLogsRequest.h
1
6#pragma once
7#include <aws/ec2/EC2_EXPORTS.h>
8#include <aws/ec2/EC2Request.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/ec2/model/FlowLogsResourceType.h>
12#include <aws/ec2/model/TrafficType.h>
13#include <aws/ec2/model/LogDestinationType.h>
14#include <aws/ec2/model/DestinationOptionsRequest.h>
15#include <aws/ec2/model/TagSpecification.h>
16#include <utility>
17
18namespace Aws
19{
20namespace EC2
21{
22namespace Model
23{
24
28 {
29 public:
30 AWS_EC2_API CreateFlowLogsRequest();
31
32 // Service request name is the Operation name which will send this request out,
33 // each operation should has unique request name, so that we can get operation's name from this request.
34 // Note: this is not true for response, multiple operations may have the same response name,
35 // so we can not get operation's name from response.
36 inline virtual const char* GetServiceRequestName() const override { return "CreateFlowLogs"; }
37
38 AWS_EC2_API Aws::String SerializePayload() const override;
39
40 protected:
41 AWS_EC2_API void DumpBodyToUrl(Aws::Http::URI& uri ) const override;
42
43 public:
44
46
52 inline bool GetDryRun() const{ return m_dryRun; }
53 inline bool DryRunHasBeenSet() const { return m_dryRunHasBeenSet; }
54 inline void SetDryRun(bool value) { m_dryRunHasBeenSet = true; m_dryRun = value; }
55 inline CreateFlowLogsRequest& WithDryRun(bool value) { SetDryRun(value); return *this;}
57
59
65 inline const Aws::String& GetClientToken() const{ return m_clientToken; }
66 inline bool ClientTokenHasBeenSet() const { return m_clientTokenHasBeenSet; }
67 inline void SetClientToken(const Aws::String& value) { m_clientTokenHasBeenSet = true; m_clientToken = value; }
68 inline void SetClientToken(Aws::String&& value) { m_clientTokenHasBeenSet = true; m_clientToken = std::move(value); }
69 inline void SetClientToken(const char* value) { m_clientTokenHasBeenSet = true; m_clientToken.assign(value); }
70 inline CreateFlowLogsRequest& WithClientToken(const Aws::String& value) { SetClientToken(value); return *this;}
71 inline CreateFlowLogsRequest& WithClientToken(Aws::String&& value) { SetClientToken(std::move(value)); return *this;}
72 inline CreateFlowLogsRequest& WithClientToken(const char* value) { SetClientToken(value); return *this;}
74
76
83 inline const Aws::String& GetDeliverLogsPermissionArn() const{ return m_deliverLogsPermissionArn; }
84 inline bool DeliverLogsPermissionArnHasBeenSet() const { return m_deliverLogsPermissionArnHasBeenSet; }
85 inline void SetDeliverLogsPermissionArn(const Aws::String& value) { m_deliverLogsPermissionArnHasBeenSet = true; m_deliverLogsPermissionArn = value; }
86 inline void SetDeliverLogsPermissionArn(Aws::String&& value) { m_deliverLogsPermissionArnHasBeenSet = true; m_deliverLogsPermissionArn = std::move(value); }
87 inline void SetDeliverLogsPermissionArn(const char* value) { m_deliverLogsPermissionArnHasBeenSet = true; m_deliverLogsPermissionArn.assign(value); }
90 inline CreateFlowLogsRequest& WithDeliverLogsPermissionArn(const char* value) { SetDeliverLogsPermissionArn(value); return *this;}
92
94
98 inline const Aws::String& GetDeliverCrossAccountRole() const{ return m_deliverCrossAccountRole; }
99 inline bool DeliverCrossAccountRoleHasBeenSet() const { return m_deliverCrossAccountRoleHasBeenSet; }
100 inline void SetDeliverCrossAccountRole(const Aws::String& value) { m_deliverCrossAccountRoleHasBeenSet = true; m_deliverCrossAccountRole = value; }
101 inline void SetDeliverCrossAccountRole(Aws::String&& value) { m_deliverCrossAccountRoleHasBeenSet = true; m_deliverCrossAccountRole = std::move(value); }
102 inline void SetDeliverCrossAccountRole(const char* value) { m_deliverCrossAccountRoleHasBeenSet = true; m_deliverCrossAccountRole.assign(value); }
105 inline CreateFlowLogsRequest& WithDeliverCrossAccountRole(const char* value) { SetDeliverCrossAccountRole(value); return *this;}
107
109
114 inline const Aws::String& GetLogGroupName() const{ return m_logGroupName; }
115 inline bool LogGroupNameHasBeenSet() const { return m_logGroupNameHasBeenSet; }
116 inline void SetLogGroupName(const Aws::String& value) { m_logGroupNameHasBeenSet = true; m_logGroupName = value; }
117 inline void SetLogGroupName(Aws::String&& value) { m_logGroupNameHasBeenSet = true; m_logGroupName = std::move(value); }
118 inline void SetLogGroupName(const char* value) { m_logGroupNameHasBeenSet = true; m_logGroupName.assign(value); }
119 inline CreateFlowLogsRequest& WithLogGroupName(const Aws::String& value) { SetLogGroupName(value); return *this;}
120 inline CreateFlowLogsRequest& WithLogGroupName(Aws::String&& value) { SetLogGroupName(std::move(value)); return *this;}
121 inline CreateFlowLogsRequest& WithLogGroupName(const char* value) { SetLogGroupName(value); return *this;}
123
125
131 inline const Aws::Vector<Aws::String>& GetResourceIds() const{ return m_resourceIds; }
132 inline bool ResourceIdsHasBeenSet() const { return m_resourceIdsHasBeenSet; }
133 inline void SetResourceIds(const Aws::Vector<Aws::String>& value) { m_resourceIdsHasBeenSet = true; m_resourceIds = value; }
134 inline void SetResourceIds(Aws::Vector<Aws::String>&& value) { m_resourceIdsHasBeenSet = true; m_resourceIds = std::move(value); }
136 inline CreateFlowLogsRequest& WithResourceIds(Aws::Vector<Aws::String>&& value) { SetResourceIds(std::move(value)); return *this;}
137 inline CreateFlowLogsRequest& AddResourceIds(const Aws::String& value) { m_resourceIdsHasBeenSet = true; m_resourceIds.push_back(value); return *this; }
138 inline CreateFlowLogsRequest& AddResourceIds(Aws::String&& value) { m_resourceIdsHasBeenSet = true; m_resourceIds.push_back(std::move(value)); return *this; }
139 inline CreateFlowLogsRequest& AddResourceIds(const char* value) { m_resourceIdsHasBeenSet = true; m_resourceIds.push_back(value); return *this; }
141
143
146 inline const FlowLogsResourceType& GetResourceType() const{ return m_resourceType; }
147 inline bool ResourceTypeHasBeenSet() const { return m_resourceTypeHasBeenSet; }
148 inline void SetResourceType(const FlowLogsResourceType& value) { m_resourceTypeHasBeenSet = true; m_resourceType = value; }
149 inline void SetResourceType(FlowLogsResourceType&& value) { m_resourceTypeHasBeenSet = true; m_resourceType = std::move(value); }
150 inline CreateFlowLogsRequest& WithResourceType(const FlowLogsResourceType& value) { SetResourceType(value); return *this;}
151 inline CreateFlowLogsRequest& WithResourceType(FlowLogsResourceType&& value) { SetResourceType(std::move(value)); return *this;}
153
155
160 inline const TrafficType& GetTrafficType() const{ return m_trafficType; }
161 inline bool TrafficTypeHasBeenSet() const { return m_trafficTypeHasBeenSet; }
162 inline void SetTrafficType(const TrafficType& value) { m_trafficTypeHasBeenSet = true; m_trafficType = value; }
163 inline void SetTrafficType(TrafficType&& value) { m_trafficTypeHasBeenSet = true; m_trafficType = std::move(value); }
164 inline CreateFlowLogsRequest& WithTrafficType(const TrafficType& value) { SetTrafficType(value); return *this;}
165 inline CreateFlowLogsRequest& WithTrafficType(TrafficType&& value) { SetTrafficType(std::move(value)); return *this;}
167
169
173 inline const LogDestinationType& GetLogDestinationType() const{ return m_logDestinationType; }
174 inline bool LogDestinationTypeHasBeenSet() const { return m_logDestinationTypeHasBeenSet; }
175 inline void SetLogDestinationType(const LogDestinationType& value) { m_logDestinationTypeHasBeenSet = true; m_logDestinationType = value; }
176 inline void SetLogDestinationType(LogDestinationType&& value) { m_logDestinationTypeHasBeenSet = true; m_logDestinationType = std::move(value); }
180
182
198 inline const Aws::String& GetLogDestination() const{ return m_logDestination; }
199 inline bool LogDestinationHasBeenSet() const { return m_logDestinationHasBeenSet; }
200 inline void SetLogDestination(const Aws::String& value) { m_logDestinationHasBeenSet = true; m_logDestination = value; }
201 inline void SetLogDestination(Aws::String&& value) { m_logDestinationHasBeenSet = true; m_logDestination = std::move(value); }
202 inline void SetLogDestination(const char* value) { m_logDestinationHasBeenSet = true; m_logDestination.assign(value); }
203 inline CreateFlowLogsRequest& WithLogDestination(const Aws::String& value) { SetLogDestination(value); return *this;}
204 inline CreateFlowLogsRequest& WithLogDestination(Aws::String&& value) { SetLogDestination(std::move(value)); return *this;}
205 inline CreateFlowLogsRequest& WithLogDestination(const char* value) { SetLogDestination(value); return *this;}
207
209
221 inline const Aws::String& GetLogFormat() const{ return m_logFormat; }
222 inline bool LogFormatHasBeenSet() const { return m_logFormatHasBeenSet; }
223 inline void SetLogFormat(const Aws::String& value) { m_logFormatHasBeenSet = true; m_logFormat = value; }
224 inline void SetLogFormat(Aws::String&& value) { m_logFormatHasBeenSet = true; m_logFormat = std::move(value); }
225 inline void SetLogFormat(const char* value) { m_logFormatHasBeenSet = true; m_logFormat.assign(value); }
226 inline CreateFlowLogsRequest& WithLogFormat(const Aws::String& value) { SetLogFormat(value); return *this;}
227 inline CreateFlowLogsRequest& WithLogFormat(Aws::String&& value) { SetLogFormat(std::move(value)); return *this;}
228 inline CreateFlowLogsRequest& WithLogFormat(const char* value) { SetLogFormat(value); return *this;}
230
232
235 inline const Aws::Vector<TagSpecification>& GetTagSpecifications() const{ return m_tagSpecifications; }
236 inline bool TagSpecificationsHasBeenSet() const { return m_tagSpecificationsHasBeenSet; }
237 inline void SetTagSpecifications(const Aws::Vector<TagSpecification>& value) { m_tagSpecificationsHasBeenSet = true; m_tagSpecifications = value; }
238 inline void SetTagSpecifications(Aws::Vector<TagSpecification>&& value) { m_tagSpecificationsHasBeenSet = true; m_tagSpecifications = std::move(value); }
241 inline CreateFlowLogsRequest& AddTagSpecifications(const TagSpecification& value) { m_tagSpecificationsHasBeenSet = true; m_tagSpecifications.push_back(value); return *this; }
242 inline CreateFlowLogsRequest& AddTagSpecifications(TagSpecification&& value) { m_tagSpecificationsHasBeenSet = true; m_tagSpecifications.push_back(std::move(value)); return *this; }
244
246
255 inline int GetMaxAggregationInterval() const{ return m_maxAggregationInterval; }
256 inline bool MaxAggregationIntervalHasBeenSet() const { return m_maxAggregationIntervalHasBeenSet; }
257 inline void SetMaxAggregationInterval(int value) { m_maxAggregationIntervalHasBeenSet = true; m_maxAggregationInterval = value; }
260
262
265 inline const DestinationOptionsRequest& GetDestinationOptions() const{ return m_destinationOptions; }
266 inline bool DestinationOptionsHasBeenSet() const { return m_destinationOptionsHasBeenSet; }
267 inline void SetDestinationOptions(const DestinationOptionsRequest& value) { m_destinationOptionsHasBeenSet = true; m_destinationOptions = value; }
268 inline void SetDestinationOptions(DestinationOptionsRequest&& value) { m_destinationOptionsHasBeenSet = true; m_destinationOptions = std::move(value); }
272 private:
273
274 bool m_dryRun;
275 bool m_dryRunHasBeenSet = false;
276
277 Aws::String m_clientToken;
278 bool m_clientTokenHasBeenSet = false;
279
280 Aws::String m_deliverLogsPermissionArn;
281 bool m_deliverLogsPermissionArnHasBeenSet = false;
282
283 Aws::String m_deliverCrossAccountRole;
284 bool m_deliverCrossAccountRoleHasBeenSet = false;
285
286 Aws::String m_logGroupName;
287 bool m_logGroupNameHasBeenSet = false;
288
289 Aws::Vector<Aws::String> m_resourceIds;
290 bool m_resourceIdsHasBeenSet = false;
291
292 FlowLogsResourceType m_resourceType;
293 bool m_resourceTypeHasBeenSet = false;
294
295 TrafficType m_trafficType;
296 bool m_trafficTypeHasBeenSet = false;
297
298 LogDestinationType m_logDestinationType;
299 bool m_logDestinationTypeHasBeenSet = false;
300
301 Aws::String m_logDestination;
302 bool m_logDestinationHasBeenSet = false;
303
304 Aws::String m_logFormat;
305 bool m_logFormatHasBeenSet = false;
306
307 Aws::Vector<TagSpecification> m_tagSpecifications;
308 bool m_tagSpecificationsHasBeenSet = false;
309
310 int m_maxAggregationInterval;
311 bool m_maxAggregationIntervalHasBeenSet = false;
312
313 DestinationOptionsRequest m_destinationOptions;
314 bool m_destinationOptionsHasBeenSet = false;
315 };
316
317} // namespace Model
318} // namespace EC2
319} // namespace Aws
CreateFlowLogsRequest & AddTagSpecifications(TagSpecification &&value)
const Aws::String & GetDeliverCrossAccountRole() const
CreateFlowLogsRequest & WithLogGroupName(const char *value)
const FlowLogsResourceType & GetResourceType() const
CreateFlowLogsRequest & WithLogDestinationType(LogDestinationType &&value)
CreateFlowLogsRequest & WithDestinationOptions(DestinationOptionsRequest &&value)
void SetDeliverLogsPermissionArn(const Aws::String &value)
CreateFlowLogsRequest & WithTrafficType(const TrafficType &value)
const LogDestinationType & GetLogDestinationType() const
CreateFlowLogsRequest & WithDeliverLogsPermissionArn(const Aws::String &value)
CreateFlowLogsRequest & WithLogGroupName(const Aws::String &value)
CreateFlowLogsRequest & AddTagSpecifications(const TagSpecification &value)
CreateFlowLogsRequest & WithLogFormat(const Aws::String &value)
void SetLogFormat(const Aws::String &value)
CreateFlowLogsRequest & WithLogFormat(Aws::String &&value)
void SetLogDestinationType(LogDestinationType &&value)
CreateFlowLogsRequest & WithDeliverCrossAccountRole(Aws::String &&value)
CreateFlowLogsRequest & WithLogGroupName(Aws::String &&value)
void SetTagSpecifications(Aws::Vector< TagSpecification > &&value)
AWS_EC2_API Aws::String SerializePayload() const override
CreateFlowLogsRequest & WithDeliverLogsPermissionArn(Aws::String &&value)
void SetTagSpecifications(const Aws::Vector< TagSpecification > &value)
CreateFlowLogsRequest & WithClientToken(const Aws::String &value)
AWS_EC2_API void DumpBodyToUrl(Aws::Http::URI &uri) const override
const DestinationOptionsRequest & GetDestinationOptions() const
void SetDeliverCrossAccountRole(const Aws::String &value)
CreateFlowLogsRequest & WithMaxAggregationInterval(int value)
CreateFlowLogsRequest & AddResourceIds(Aws::String &&value)
CreateFlowLogsRequest & WithLogFormat(const char *value)
CreateFlowLogsRequest & WithResourceIds(Aws::Vector< Aws::String > &&value)
CreateFlowLogsRequest & AddResourceIds(const char *value)
void SetClientToken(const Aws::String &value)
void SetDestinationOptions(const DestinationOptionsRequest &value)
void SetResourceType(const FlowLogsResourceType &value)
void SetResourceIds(const Aws::Vector< Aws::String > &value)
void SetLogDestinationType(const LogDestinationType &value)
const Aws::Vector< Aws::String > & GetResourceIds() const
CreateFlowLogsRequest & WithDestinationOptions(const DestinationOptionsRequest &value)
CreateFlowLogsRequest & WithResourceType(const FlowLogsResourceType &value)
CreateFlowLogsRequest & WithDeliverCrossAccountRole(const Aws::String &value)
CreateFlowLogsRequest & WithDeliverCrossAccountRole(const char *value)
CreateFlowLogsRequest & WithResourceType(FlowLogsResourceType &&value)
CreateFlowLogsRequest & WithLogDestination(const char *value)
void SetLogGroupName(const Aws::String &value)
CreateFlowLogsRequest & WithDryRun(bool value)
CreateFlowLogsRequest & WithDeliverLogsPermissionArn(const char *value)
void SetResourceType(FlowLogsResourceType &&value)
CreateFlowLogsRequest & WithLogDestination(Aws::String &&value)
CreateFlowLogsRequest & AddResourceIds(const Aws::String &value)
CreateFlowLogsRequest & WithClientToken(Aws::String &&value)
void SetDeliverLogsPermissionArn(Aws::String &&value)
CreateFlowLogsRequest & WithClientToken(const char *value)
void SetDeliverCrossAccountRole(Aws::String &&value)
const Aws::Vector< TagSpecification > & GetTagSpecifications() const
void SetLogDestination(const Aws::String &value)
void SetResourceIds(Aws::Vector< Aws::String > &&value)
CreateFlowLogsRequest & WithResourceIds(const Aws::Vector< Aws::String > &value)
CreateFlowLogsRequest & WithLogDestination(const Aws::String &value)
void SetDeliverLogsPermissionArn(const char *value)
const Aws::String & GetLogDestination() const
void SetTrafficType(const TrafficType &value)
CreateFlowLogsRequest & WithTrafficType(TrafficType &&value)
CreateFlowLogsRequest & WithTagSpecifications(const Aws::Vector< TagSpecification > &value)
const Aws::String & GetDeliverLogsPermissionArn() const
virtual const char * GetServiceRequestName() const override
void SetDestinationOptions(DestinationOptionsRequest &&value)
CreateFlowLogsRequest & WithTagSpecifications(Aws::Vector< TagSpecification > &&value)
CreateFlowLogsRequest & WithLogDestinationType(const LogDestinationType &value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector