AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
NetworkInterfacePermission.h
1
6#pragma once
7#include <aws/ec2/EC2_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/ec2/model/InterfacePermissionType.h>
11#include <aws/ec2/model/NetworkInterfacePermissionState.h>
12#include <utility>
13
14namespace Aws
15{
16namespace Utils
17{
18namespace Xml
19{
20 class XmlNode;
21} // namespace Xml
22} // namespace Utils
23namespace EC2
24{
25namespace Model
26{
27
34 {
35 public:
36 AWS_EC2_API NetworkInterfacePermission() = default;
39
40 AWS_EC2_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
41 AWS_EC2_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
42
43
45
48 inline const Aws::String& GetNetworkInterfacePermissionId() const { return m_networkInterfacePermissionId; }
49 inline bool NetworkInterfacePermissionIdHasBeenSet() const { return m_networkInterfacePermissionIdHasBeenSet; }
50 template<typename NetworkInterfacePermissionIdT = Aws::String>
51 void SetNetworkInterfacePermissionId(NetworkInterfacePermissionIdT&& value) { m_networkInterfacePermissionIdHasBeenSet = true; m_networkInterfacePermissionId = std::forward<NetworkInterfacePermissionIdT>(value); }
52 template<typename NetworkInterfacePermissionIdT = Aws::String>
53 NetworkInterfacePermission& WithNetworkInterfacePermissionId(NetworkInterfacePermissionIdT&& value) { SetNetworkInterfacePermissionId(std::forward<NetworkInterfacePermissionIdT>(value)); return *this;}
55
57
60 inline const Aws::String& GetNetworkInterfaceId() const { return m_networkInterfaceId; }
61 inline bool NetworkInterfaceIdHasBeenSet() const { return m_networkInterfaceIdHasBeenSet; }
62 template<typename NetworkInterfaceIdT = Aws::String>
63 void SetNetworkInterfaceId(NetworkInterfaceIdT&& value) { m_networkInterfaceIdHasBeenSet = true; m_networkInterfaceId = std::forward<NetworkInterfaceIdT>(value); }
64 template<typename NetworkInterfaceIdT = Aws::String>
65 NetworkInterfacePermission& WithNetworkInterfaceId(NetworkInterfaceIdT&& value) { SetNetworkInterfaceId(std::forward<NetworkInterfaceIdT>(value)); return *this;}
67
69
72 inline const Aws::String& GetAwsAccountId() const { return m_awsAccountId; }
73 inline bool AwsAccountIdHasBeenSet() const { return m_awsAccountIdHasBeenSet; }
74 template<typename AwsAccountIdT = Aws::String>
75 void SetAwsAccountId(AwsAccountIdT&& value) { m_awsAccountIdHasBeenSet = true; m_awsAccountId = std::forward<AwsAccountIdT>(value); }
76 template<typename AwsAccountIdT = Aws::String>
77 NetworkInterfacePermission& WithAwsAccountId(AwsAccountIdT&& value) { SetAwsAccountId(std::forward<AwsAccountIdT>(value)); return *this;}
79
81
84 inline const Aws::String& GetAwsService() const { return m_awsService; }
85 inline bool AwsServiceHasBeenSet() const { return m_awsServiceHasBeenSet; }
86 template<typename AwsServiceT = Aws::String>
87 void SetAwsService(AwsServiceT&& value) { m_awsServiceHasBeenSet = true; m_awsService = std::forward<AwsServiceT>(value); }
88 template<typename AwsServiceT = Aws::String>
89 NetworkInterfacePermission& WithAwsService(AwsServiceT&& value) { SetAwsService(std::forward<AwsServiceT>(value)); return *this;}
91
93
96 inline InterfacePermissionType GetPermission() const { return m_permission; }
97 inline bool PermissionHasBeenSet() const { return m_permissionHasBeenSet; }
98 inline void SetPermission(InterfacePermissionType value) { m_permissionHasBeenSet = true; m_permission = value; }
101
103
106 inline const NetworkInterfacePermissionState& GetPermissionState() const { return m_permissionState; }
107 inline bool PermissionStateHasBeenSet() const { return m_permissionStateHasBeenSet; }
108 template<typename PermissionStateT = NetworkInterfacePermissionState>
109 void SetPermissionState(PermissionStateT&& value) { m_permissionStateHasBeenSet = true; m_permissionState = std::forward<PermissionStateT>(value); }
110 template<typename PermissionStateT = NetworkInterfacePermissionState>
111 NetworkInterfacePermission& WithPermissionState(PermissionStateT&& value) { SetPermissionState(std::forward<PermissionStateT>(value)); return *this;}
113 private:
114
115 Aws::String m_networkInterfacePermissionId;
116 bool m_networkInterfacePermissionIdHasBeenSet = false;
117
118 Aws::String m_networkInterfaceId;
119 bool m_networkInterfaceIdHasBeenSet = false;
120
121 Aws::String m_awsAccountId;
122 bool m_awsAccountIdHasBeenSet = false;
123
124 Aws::String m_awsService;
125 bool m_awsServiceHasBeenSet = false;
126
128 bool m_permissionHasBeenSet = false;
129
130 NetworkInterfacePermissionState m_permissionState;
131 bool m_permissionStateHasBeenSet = false;
132 };
133
134} // namespace Model
135} // namespace EC2
136} // namespace Aws
NetworkInterfacePermission & WithAwsService(AwsServiceT &&value)
NetworkInterfacePermission & WithNetworkInterfaceId(NetworkInterfaceIdT &&value)
AWS_EC2_API void OutputToStream(Aws::OStream &oStream, const char *location) const
void SetNetworkInterfaceId(NetworkInterfaceIdT &&value)
AWS_EC2_API NetworkInterfacePermission()=default
AWS_EC2_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
void SetNetworkInterfacePermissionId(NetworkInterfacePermissionIdT &&value)
AWS_EC2_API NetworkInterfacePermission & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
NetworkInterfacePermission & WithNetworkInterfacePermissionId(NetworkInterfacePermissionIdT &&value)
NetworkInterfacePermission & WithPermissionState(PermissionStateT &&value)
NetworkInterfacePermission & WithAwsAccountId(AwsAccountIdT &&value)
const NetworkInterfacePermissionState & GetPermissionState() const
void SetPermission(InterfacePermissionType value)
AWS_EC2_API NetworkInterfacePermission(const Aws::Utils::Xml::XmlNode &xmlNode)
NetworkInterfacePermission & WithPermission(InterfacePermissionType value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::basic_ostream< char, std::char_traits< char > > OStream