AWS SDK for C++  0.14.3
AWS SDK for C++
CustomerGateway.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>
20 #include <aws/ec2/model/Tag.h>
21 
22 namespace Aws
23 {
24 namespace Utils
25 {
26 namespace Xml
27 {
28  class XmlNode;
29 } // namespace Xml
30 } // namespace Utils
31 namespace EC2
32 {
33 namespace Model
34 {
35 
40  {
41  public:
44  CustomerGateway& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
45 
46  void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
47  void OutputToStream(Aws::OStream& oStream, const char* location) const;
48 
52  inline const Aws::String& GetCustomerGatewayId() const{ return m_customerGatewayId; }
53 
57  inline void SetCustomerGatewayId(const Aws::String& value) { m_customerGatewayIdHasBeenSet = true; m_customerGatewayId = value; }
58 
62  inline void SetCustomerGatewayId(Aws::String&& value) { m_customerGatewayIdHasBeenSet = true; m_customerGatewayId = value; }
63 
67  inline void SetCustomerGatewayId(const char* value) { m_customerGatewayIdHasBeenSet = true; m_customerGatewayId.assign(value); }
68 
72  inline CustomerGateway& WithCustomerGatewayId(const Aws::String& value) { SetCustomerGatewayId(value); return *this;}
73 
77  inline CustomerGateway& WithCustomerGatewayId(Aws::String&& value) { SetCustomerGatewayId(value); return *this;}
78 
82  inline CustomerGateway& WithCustomerGatewayId(const char* value) { SetCustomerGatewayId(value); return *this;}
83 
88  inline const Aws::String& GetState() const{ return m_state; }
89 
94  inline void SetState(const Aws::String& value) { m_stateHasBeenSet = true; m_state = value; }
95 
100  inline void SetState(Aws::String&& value) { m_stateHasBeenSet = true; m_state = value; }
101 
106  inline void SetState(const char* value) { m_stateHasBeenSet = true; m_state.assign(value); }
107 
112  inline CustomerGateway& WithState(const Aws::String& value) { SetState(value); return *this;}
113 
118  inline CustomerGateway& WithState(Aws::String&& value) { SetState(value); return *this;}
119 
124  inline CustomerGateway& WithState(const char* value) { SetState(value); return *this;}
125 
130  inline const Aws::String& GetType() const{ return m_type; }
131 
136  inline void SetType(const Aws::String& value) { m_typeHasBeenSet = true; m_type = value; }
137 
142  inline void SetType(Aws::String&& value) { m_typeHasBeenSet = true; m_type = value; }
143 
148  inline void SetType(const char* value) { m_typeHasBeenSet = true; m_type.assign(value); }
149 
154  inline CustomerGateway& WithType(const Aws::String& value) { SetType(value); return *this;}
155 
160  inline CustomerGateway& WithType(Aws::String&& value) { SetType(value); return *this;}
161 
166  inline CustomerGateway& WithType(const char* value) { SetType(value); return *this;}
167 
172  inline const Aws::String& GetIpAddress() const{ return m_ipAddress; }
173 
178  inline void SetIpAddress(const Aws::String& value) { m_ipAddressHasBeenSet = true; m_ipAddress = value; }
179 
184  inline void SetIpAddress(Aws::String&& value) { m_ipAddressHasBeenSet = true; m_ipAddress = value; }
185 
190  inline void SetIpAddress(const char* value) { m_ipAddressHasBeenSet = true; m_ipAddress.assign(value); }
191 
196  inline CustomerGateway& WithIpAddress(const Aws::String& value) { SetIpAddress(value); return *this;}
197 
202  inline CustomerGateway& WithIpAddress(Aws::String&& value) { SetIpAddress(value); return *this;}
203 
208  inline CustomerGateway& WithIpAddress(const char* value) { SetIpAddress(value); return *this;}
209 
214  inline const Aws::String& GetBgpAsn() const{ return m_bgpAsn; }
215 
220  inline void SetBgpAsn(const Aws::String& value) { m_bgpAsnHasBeenSet = true; m_bgpAsn = value; }
221 
226  inline void SetBgpAsn(Aws::String&& value) { m_bgpAsnHasBeenSet = true; m_bgpAsn = value; }
227 
232  inline void SetBgpAsn(const char* value) { m_bgpAsnHasBeenSet = true; m_bgpAsn.assign(value); }
233 
238  inline CustomerGateway& WithBgpAsn(const Aws::String& value) { SetBgpAsn(value); return *this;}
239 
244  inline CustomerGateway& WithBgpAsn(Aws::String&& value) { SetBgpAsn(value); return *this;}
245 
250  inline CustomerGateway& WithBgpAsn(const char* value) { SetBgpAsn(value); return *this;}
251 
255  inline const Aws::Vector<Tag>& GetTags() const{ return m_tags; }
256 
260  inline void SetTags(const Aws::Vector<Tag>& value) { m_tagsHasBeenSet = true; m_tags = value; }
261 
265  inline void SetTags(Aws::Vector<Tag>&& value) { m_tagsHasBeenSet = true; m_tags = value; }
266 
270  inline CustomerGateway& WithTags(const Aws::Vector<Tag>& value) { SetTags(value); return *this;}
271 
275  inline CustomerGateway& WithTags(Aws::Vector<Tag>&& value) { SetTags(value); return *this;}
276 
280  inline CustomerGateway& AddTags(const Tag& value) { m_tagsHasBeenSet = true; m_tags.push_back(value); return *this; }
281 
285  inline CustomerGateway& AddTags(Tag&& value) { m_tagsHasBeenSet = true; m_tags.push_back(value); return *this; }
286 
287  private:
288  Aws::String m_customerGatewayId;
289  bool m_customerGatewayIdHasBeenSet;
290  Aws::String m_state;
291  bool m_stateHasBeenSet;
292  Aws::String m_type;
293  bool m_typeHasBeenSet;
294  Aws::String m_ipAddress;
295  bool m_ipAddressHasBeenSet;
296  Aws::String m_bgpAsn;
297  bool m_bgpAsnHasBeenSet;
298  Aws::Vector<Tag> m_tags;
299  bool m_tagsHasBeenSet;
300  };
301 
302 } // namespace Model
303 } // namespace EC2
304 } // namespace Aws
void SetState(Aws::String &&value)
CustomerGateway & WithCustomerGatewayId(const char *value)
void SetBgpAsn(const Aws::String &value)
void SetCustomerGatewayId(const char *value)
void SetCustomerGatewayId(Aws::String &&value)
void SetIpAddress(Aws::String &&value)
CustomerGateway & WithType(const char *value)
const Aws::String & GetBgpAsn() const
CustomerGateway & WithState(const Aws::String &value)
const Aws::String & GetState() const
std::vector< T, Aws::Allocator< T > > Vector
Definition: AWSVector.h:27
void SetTags(const Aws::Vector< Tag > &value)
CustomerGateway & WithState(Aws::String &&value)
const Aws::String & GetType() const
CustomerGateway & WithCustomerGatewayId(Aws::String &&value)
CustomerGateway & WithIpAddress(Aws::String &&value)
CustomerGateway & WithBgpAsn(const Aws::String &value)
const Aws::String & GetCustomerGatewayId() const
CustomerGateway & WithCustomerGatewayId(const Aws::String &value)
CustomerGateway & WithTags(Aws::Vector< Tag > &&value)
CustomerGateway & WithState(const char *value)
CustomerGateway & WithType(const Aws::String &value)
void SetIpAddress(const Aws::String &value)
void SetState(const Aws::String &value)
std::basic_ostream< char, std::char_traits< char > > OStream
Definition: AWSStreamFwd.h:31
void SetState(const char *value)
CustomerGateway & WithBgpAsn(const char *value)
void SetType(const Aws::String &value)
void SetIpAddress(const char *value)
void SetBgpAsn(const char *value)
CustomerGateway & AddTags(const Tag &value)
void SetType(const char *value)
CustomerGateway & AddTags(Tag &&value)
CustomerGateway & WithIpAddress(const char *value)
CustomerGateway & WithIpAddress(const Aws::String &value)
CustomerGateway & WithBgpAsn(Aws::String &&value)
void SetCustomerGatewayId(const Aws::String &value)
void SetTags(Aws::Vector< Tag > &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
const Aws::Vector< Tag > & GetTags() const
CustomerGateway & WithTags(const Aws::Vector< Tag > &value)
CustomerGateway & WithType(Aws::String &&value)
void SetBgpAsn(Aws::String &&value)
const Aws::String & GetIpAddress() const
#define AWS_EC2_API
Definition: EC2_EXPORTS.h:37
void SetType(Aws::String &&value)
JSON (JavaScript Object Notation).