AWS SDK for C++  0.14.3
AWS SDK for C++
CreateFlowLogsRequest.h
Go to the documentation of this file.
1 /*
2 * Copyright 2010-2016 Amazon.com, Inc. or its affiliates. All Rights Reserved.
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License").
5 * You may not use this file except in compliance with the License.
6 * A copy of the License is located at
7 *
8 * http://aws.amazon.com/apache2.0
9 *
10 * or in the "license" file accompanying this file. This file is distributed
11 * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
12 * express or implied. See the License for the specific language governing
13 * permissions and limitations under the License.
14 */
15 #pragma once
16 #include <aws/ec2/EC2_EXPORTS.h>
17 #include <aws/ec2/EC2Request.h>
22 
23 namespace Aws
24 {
25 namespace EC2
26 {
27 namespace Model
28 {
29 
34  {
35  public:
37  Aws::String SerializePayload() const override;
38 
43  inline const Aws::Vector<Aws::String>& GetResourceIds() const{ return m_resourceIds; }
44 
49  inline void SetResourceIds(const Aws::Vector<Aws::String>& value) { m_resourceIdsHasBeenSet = true; m_resourceIds = value; }
50 
55  inline void SetResourceIds(Aws::Vector<Aws::String>&& value) { m_resourceIdsHasBeenSet = true; m_resourceIds = value; }
56 
61  inline CreateFlowLogsRequest& WithResourceIds(const Aws::Vector<Aws::String>& value) { SetResourceIds(value); return *this;}
62 
67  inline CreateFlowLogsRequest& WithResourceIds(Aws::Vector<Aws::String>&& value) { SetResourceIds(value); return *this;}
68 
73  inline CreateFlowLogsRequest& AddResourceIds(const Aws::String& value) { m_resourceIdsHasBeenSet = true; m_resourceIds.push_back(value); return *this; }
74 
79  inline CreateFlowLogsRequest& AddResourceIds(Aws::String&& value) { m_resourceIdsHasBeenSet = true; m_resourceIds.push_back(value); return *this; }
80 
85  inline CreateFlowLogsRequest& AddResourceIds(const char* value) { m_resourceIdsHasBeenSet = true; m_resourceIds.push_back(value); return *this; }
86 
90  inline const FlowLogsResourceType& GetResourceType() const{ return m_resourceType; }
91 
95  inline void SetResourceType(const FlowLogsResourceType& value) { m_resourceTypeHasBeenSet = true; m_resourceType = value; }
96 
100  inline void SetResourceType(FlowLogsResourceType&& value) { m_resourceTypeHasBeenSet = true; m_resourceType = value; }
101 
105  inline CreateFlowLogsRequest& WithResourceType(const FlowLogsResourceType& value) { SetResourceType(value); return *this;}
106 
110  inline CreateFlowLogsRequest& WithResourceType(FlowLogsResourceType&& value) { SetResourceType(value); return *this;}
111 
115  inline const TrafficType& GetTrafficType() const{ return m_trafficType; }
116 
120  inline void SetTrafficType(const TrafficType& value) { m_trafficTypeHasBeenSet = true; m_trafficType = value; }
121 
125  inline void SetTrafficType(TrafficType&& value) { m_trafficTypeHasBeenSet = true; m_trafficType = value; }
126 
130  inline CreateFlowLogsRequest& WithTrafficType(const TrafficType& value) { SetTrafficType(value); return *this;}
131 
135  inline CreateFlowLogsRequest& WithTrafficType(TrafficType&& value) { SetTrafficType(value); return *this;}
136 
140  inline const Aws::String& GetLogGroupName() const{ return m_logGroupName; }
141 
145  inline void SetLogGroupName(const Aws::String& value) { m_logGroupNameHasBeenSet = true; m_logGroupName = value; }
146 
150  inline void SetLogGroupName(Aws::String&& value) { m_logGroupNameHasBeenSet = true; m_logGroupName = value; }
151 
155  inline void SetLogGroupName(const char* value) { m_logGroupNameHasBeenSet = true; m_logGroupName.assign(value); }
156 
160  inline CreateFlowLogsRequest& WithLogGroupName(const Aws::String& value) { SetLogGroupName(value); return *this;}
161 
165  inline CreateFlowLogsRequest& WithLogGroupName(Aws::String&& value) { SetLogGroupName(value); return *this;}
166 
170  inline CreateFlowLogsRequest& WithLogGroupName(const char* value) { SetLogGroupName(value); return *this;}
171 
176  inline const Aws::String& GetDeliverLogsPermissionArn() const{ return m_deliverLogsPermissionArn; }
177 
182  inline void SetDeliverLogsPermissionArn(const Aws::String& value) { m_deliverLogsPermissionArnHasBeenSet = true; m_deliverLogsPermissionArn = value; }
183 
188  inline void SetDeliverLogsPermissionArn(Aws::String&& value) { m_deliverLogsPermissionArnHasBeenSet = true; m_deliverLogsPermissionArn = value; }
189 
194  inline void SetDeliverLogsPermissionArn(const char* value) { m_deliverLogsPermissionArnHasBeenSet = true; m_deliverLogsPermissionArn.assign(value); }
195 
200  inline CreateFlowLogsRequest& WithDeliverLogsPermissionArn(const Aws::String& value) { SetDeliverLogsPermissionArn(value); return *this;}
201 
206  inline CreateFlowLogsRequest& WithDeliverLogsPermissionArn(Aws::String&& value) { SetDeliverLogsPermissionArn(value); return *this;}
207 
212  inline CreateFlowLogsRequest& WithDeliverLogsPermissionArn(const char* value) { SetDeliverLogsPermissionArn(value); return *this;}
213 
220  inline const Aws::String& GetClientToken() const{ return m_clientToken; }
221 
228  inline void SetClientToken(const Aws::String& value) { m_clientTokenHasBeenSet = true; m_clientToken = value; }
229 
236  inline void SetClientToken(Aws::String&& value) { m_clientTokenHasBeenSet = true; m_clientToken = value; }
237 
244  inline void SetClientToken(const char* value) { m_clientTokenHasBeenSet = true; m_clientToken.assign(value); }
245 
252  inline CreateFlowLogsRequest& WithClientToken(const Aws::String& value) { SetClientToken(value); return *this;}
253 
260  inline CreateFlowLogsRequest& WithClientToken(Aws::String&& value) { SetClientToken(value); return *this;}
261 
268  inline CreateFlowLogsRequest& WithClientToken(const char* value) { SetClientToken(value); return *this;}
269 
270  private:
271  Aws::Vector<Aws::String> m_resourceIds;
272  bool m_resourceIdsHasBeenSet;
273  FlowLogsResourceType m_resourceType;
274  bool m_resourceTypeHasBeenSet;
275  TrafficType m_trafficType;
276  bool m_trafficTypeHasBeenSet;
277  Aws::String m_logGroupName;
278  bool m_logGroupNameHasBeenSet;
279  Aws::String m_deliverLogsPermissionArn;
280  bool m_deliverLogsPermissionArnHasBeenSet;
281  Aws::String m_clientToken;
282  bool m_clientTokenHasBeenSet;
283  };
284 
285 } // namespace Model
286 } // namespace EC2
287 } // namespace Aws
CreateFlowLogsRequest & WithResourceIds(const Aws::Vector< Aws::String > &value)
CreateFlowLogsRequest & WithClientToken(const Aws::String &value)
CreateFlowLogsRequest & AddResourceIds(const Aws::String &value)
void SetLogGroupName(const Aws::String &value)
void SetDeliverLogsPermissionArn(const Aws::String &value)
CreateFlowLogsRequest & WithLogGroupName(Aws::String &&value)
CreateFlowLogsRequest & WithDeliverLogsPermissionArn(const char *value)
void SetResourceIds(Aws::Vector< Aws::String > &&value)
CreateFlowLogsRequest & WithLogGroupName(const Aws::String &value)
std::vector< T, Aws::Allocator< T > > Vector
Definition: AWSVector.h:27
void SetResourceType(FlowLogsResourceType &&value)
const Aws::Vector< Aws::String > & GetResourceIds() const
void SetResourceType(const FlowLogsResourceType &value)
const FlowLogsResourceType & GetResourceType() const
CreateFlowLogsRequest & WithLogGroupName(const char *value)
const Aws::String & GetLogGroupName() const
CreateFlowLogsRequest & AddResourceIds(Aws::String &&value)
CreateFlowLogsRequest & WithTrafficType(TrafficType &&value)
void SetDeliverLogsPermissionArn(Aws::String &&value)
CreateFlowLogsRequest & AddResourceIds(const char *value)
const Aws::String & GetClientToken() const
CreateFlowLogsRequest & WithClientToken(Aws::String &&value)
CreateFlowLogsRequest & WithTrafficType(const TrafficType &value)
void SetClientToken(const Aws::String &value)
CreateFlowLogsRequest & WithDeliverLogsPermissionArn(const Aws::String &value)
CreateFlowLogsRequest & WithResourceType(const FlowLogsResourceType &value)
void SetTrafficType(const TrafficType &value)
const TrafficType & GetTrafficType() const
CreateFlowLogsRequest & WithResourceIds(Aws::Vector< Aws::String > &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
CreateFlowLogsRequest & WithResourceType(FlowLogsResourceType &&value)
const Aws::String & GetDeliverLogsPermissionArn() const
CreateFlowLogsRequest & WithDeliverLogsPermissionArn(Aws::String &&value)
CreateFlowLogsRequest & WithClientToken(const char *value)
#define AWS_EC2_API
Definition: EC2_EXPORTS.h:37
void SetDeliverLogsPermissionArn(const char *value)
void SetResourceIds(const Aws::Vector< Aws::String > &value)
JSON (JavaScript Object Notation).