AWS SDK for C++  1.8.71
AWS SDK for C++
RegisterTransitGatewayMulticastGroupMembersRequest.h
Go to the documentation of this file.
1 
6 #pragma once
7 #include <aws/ec2/EC2_EXPORTS.h>
8 #include <aws/ec2/EC2Request.h>
11 #include <utility>
12 
13 namespace Aws
14 {
15 namespace EC2
16 {
17 namespace Model
18 {
19 
23  {
24  public:
26 
27  // Service request name is the Operation name which will send this request out,
28  // each operation should has unique request name, so that we can get operation's name from this request.
29  // Note: this is not true for response, multiple operations may have the same response name,
30  // so we can not get operation's name from response.
31  inline virtual const char* GetServiceRequestName() const override { return "RegisterTransitGatewayMulticastGroupMembers"; }
32 
33  Aws::String SerializePayload() const override;
34 
35  protected:
36  void DumpBodyToUrl(Aws::Http::URI& uri ) const override;
37 
38  public:
39 
43  inline const Aws::String& GetTransitGatewayMulticastDomainId() const{ return m_transitGatewayMulticastDomainId; }
44 
48  inline bool TransitGatewayMulticastDomainIdHasBeenSet() const { return m_transitGatewayMulticastDomainIdHasBeenSet; }
49 
53  inline void SetTransitGatewayMulticastDomainId(const Aws::String& value) { m_transitGatewayMulticastDomainIdHasBeenSet = true; m_transitGatewayMulticastDomainId = value; }
54 
58  inline void SetTransitGatewayMulticastDomainId(Aws::String&& value) { m_transitGatewayMulticastDomainIdHasBeenSet = true; m_transitGatewayMulticastDomainId = std::move(value); }
59 
63  inline void SetTransitGatewayMulticastDomainId(const char* value) { m_transitGatewayMulticastDomainIdHasBeenSet = true; m_transitGatewayMulticastDomainId.assign(value); }
64 
68  inline RegisterTransitGatewayMulticastGroupMembersRequest& WithTransitGatewayMulticastDomainId(const Aws::String& value) { SetTransitGatewayMulticastDomainId(value); return *this;}
69 
73  inline RegisterTransitGatewayMulticastGroupMembersRequest& WithTransitGatewayMulticastDomainId(Aws::String&& value) { SetTransitGatewayMulticastDomainId(std::move(value)); return *this;}
74 
78  inline RegisterTransitGatewayMulticastGroupMembersRequest& WithTransitGatewayMulticastDomainId(const char* value) { SetTransitGatewayMulticastDomainId(value); return *this;}
79 
80 
84  inline const Aws::String& GetGroupIpAddress() const{ return m_groupIpAddress; }
85 
89  inline bool GroupIpAddressHasBeenSet() const { return m_groupIpAddressHasBeenSet; }
90 
94  inline void SetGroupIpAddress(const Aws::String& value) { m_groupIpAddressHasBeenSet = true; m_groupIpAddress = value; }
95 
99  inline void SetGroupIpAddress(Aws::String&& value) { m_groupIpAddressHasBeenSet = true; m_groupIpAddress = std::move(value); }
100 
104  inline void SetGroupIpAddress(const char* value) { m_groupIpAddressHasBeenSet = true; m_groupIpAddress.assign(value); }
105 
109  inline RegisterTransitGatewayMulticastGroupMembersRequest& WithGroupIpAddress(const Aws::String& value) { SetGroupIpAddress(value); return *this;}
110 
114  inline RegisterTransitGatewayMulticastGroupMembersRequest& WithGroupIpAddress(Aws::String&& value) { SetGroupIpAddress(std::move(value)); return *this;}
115 
119  inline RegisterTransitGatewayMulticastGroupMembersRequest& WithGroupIpAddress(const char* value) { SetGroupIpAddress(value); return *this;}
120 
121 
126  inline const Aws::Vector<Aws::String>& GetNetworkInterfaceIds() const{ return m_networkInterfaceIds; }
127 
132  inline bool NetworkInterfaceIdsHasBeenSet() const { return m_networkInterfaceIdsHasBeenSet; }
133 
138  inline void SetNetworkInterfaceIds(const Aws::Vector<Aws::String>& value) { m_networkInterfaceIdsHasBeenSet = true; m_networkInterfaceIds = value; }
139 
144  inline void SetNetworkInterfaceIds(Aws::Vector<Aws::String>&& value) { m_networkInterfaceIdsHasBeenSet = true; m_networkInterfaceIds = std::move(value); }
145 
150  inline RegisterTransitGatewayMulticastGroupMembersRequest& WithNetworkInterfaceIds(const Aws::Vector<Aws::String>& value) { SetNetworkInterfaceIds(value); return *this;}
151 
156  inline RegisterTransitGatewayMulticastGroupMembersRequest& WithNetworkInterfaceIds(Aws::Vector<Aws::String>&& value) { SetNetworkInterfaceIds(std::move(value)); return *this;}
157 
162  inline RegisterTransitGatewayMulticastGroupMembersRequest& AddNetworkInterfaceIds(const Aws::String& value) { m_networkInterfaceIdsHasBeenSet = true; m_networkInterfaceIds.push_back(value); return *this; }
163 
168  inline RegisterTransitGatewayMulticastGroupMembersRequest& AddNetworkInterfaceIds(Aws::String&& value) { m_networkInterfaceIdsHasBeenSet = true; m_networkInterfaceIds.push_back(std::move(value)); return *this; }
169 
174  inline RegisterTransitGatewayMulticastGroupMembersRequest& AddNetworkInterfaceIds(const char* value) { m_networkInterfaceIdsHasBeenSet = true; m_networkInterfaceIds.push_back(value); return *this; }
175 
176 
183  inline bool GetDryRun() const{ return m_dryRun; }
184 
191  inline bool DryRunHasBeenSet() const { return m_dryRunHasBeenSet; }
192 
199  inline void SetDryRun(bool value) { m_dryRunHasBeenSet = true; m_dryRun = value; }
200 
207  inline RegisterTransitGatewayMulticastGroupMembersRequest& WithDryRun(bool value) { SetDryRun(value); return *this;}
208 
209  private:
210 
211  Aws::String m_transitGatewayMulticastDomainId;
212  bool m_transitGatewayMulticastDomainIdHasBeenSet;
213 
214  Aws::String m_groupIpAddress;
215  bool m_groupIpAddressHasBeenSet;
216 
217  Aws::Vector<Aws::String> m_networkInterfaceIds;
218  bool m_networkInterfaceIdsHasBeenSet;
219 
220  bool m_dryRun;
221  bool m_dryRunHasBeenSet;
222  };
223 
224 } // namespace Model
225 } // namespace EC2
226 } // namespace Aws
RegisterTransitGatewayMulticastGroupMembersRequest & WithNetworkInterfaceIds(const Aws::Vector< Aws::String > &value)
RegisterTransitGatewayMulticastGroupMembersRequest & AddNetworkInterfaceIds(const char *value)
RegisterTransitGatewayMulticastGroupMembersRequest & WithGroupIpAddress(const Aws::String &value)
RegisterTransitGatewayMulticastGroupMembersRequest & AddNetworkInterfaceIds(const Aws::String &value)
std::vector< T, Aws::Allocator< T > > Vector
Definition: AWSVector.h:17
RegisterTransitGatewayMulticastGroupMembersRequest & WithTransitGatewayMulticastDomainId(const char *value)
RegisterTransitGatewayMulticastGroupMembersRequest & AddNetworkInterfaceIds(Aws::String &&value)
RegisterTransitGatewayMulticastGroupMembersRequest & WithGroupIpAddress(Aws::String &&value)
RegisterTransitGatewayMulticastGroupMembersRequest & WithTransitGatewayMulticastDomainId(Aws::String &&value)
RegisterTransitGatewayMulticastGroupMembersRequest & WithTransitGatewayMulticastDomainId(const Aws::String &value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
RegisterTransitGatewayMulticastGroupMembersRequest & WithNetworkInterfaceIds(Aws::Vector< Aws::String > &&value)
#define AWS_EC2_API
Definition: EC2_EXPORTS.h:28
RegisterTransitGatewayMulticastGroupMembersRequest & WithGroupIpAddress(const char *value)