AWS SDK for C++

AWS SDK for C++ Version 1.11.717

Loading...
Searching...
No Matches
NetworkInterfacePermission.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/ec2/EC2_EXPORTS.h>
10#include <aws/ec2/model/InterfacePermissionType.h>
11#include <aws/ec2/model/NetworkInterfacePermissionState.h>
12
13#include <utility>
14
15namespace Aws {
16namespace Utils {
17namespace Xml {
18class XmlNode;
19} // namespace Xml
20} // namespace Utils
21namespace EC2 {
22namespace Model {
23
30 public:
31 AWS_EC2_API NetworkInterfacePermission() = default;
34
35 AWS_EC2_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
36 AWS_EC2_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
37
39
42 inline const Aws::String& GetNetworkInterfacePermissionId() const { return m_networkInterfacePermissionId; }
43 inline bool NetworkInterfacePermissionIdHasBeenSet() const { return m_networkInterfacePermissionIdHasBeenSet; }
44 template <typename NetworkInterfacePermissionIdT = Aws::String>
45 void SetNetworkInterfacePermissionId(NetworkInterfacePermissionIdT&& value) {
46 m_networkInterfacePermissionIdHasBeenSet = true;
47 m_networkInterfacePermissionId = std::forward<NetworkInterfacePermissionIdT>(value);
48 }
49 template <typename NetworkInterfacePermissionIdT = Aws::String>
50 NetworkInterfacePermission& WithNetworkInterfacePermissionId(NetworkInterfacePermissionIdT&& value) {
51 SetNetworkInterfacePermissionId(std::forward<NetworkInterfacePermissionIdT>(value));
52 return *this;
53 }
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) {
64 m_networkInterfaceIdHasBeenSet = true;
65 m_networkInterfaceId = std::forward<NetworkInterfaceIdT>(value);
66 }
67 template <typename NetworkInterfaceIdT = Aws::String>
68 NetworkInterfacePermission& WithNetworkInterfaceId(NetworkInterfaceIdT&& value) {
69 SetNetworkInterfaceId(std::forward<NetworkInterfaceIdT>(value));
70 return *this;
71 }
73
75
78 inline const Aws::String& GetAwsAccountId() const { return m_awsAccountId; }
79 inline bool AwsAccountIdHasBeenSet() const { return m_awsAccountIdHasBeenSet; }
80 template <typename AwsAccountIdT = Aws::String>
81 void SetAwsAccountId(AwsAccountIdT&& value) {
82 m_awsAccountIdHasBeenSet = true;
83 m_awsAccountId = std::forward<AwsAccountIdT>(value);
84 }
85 template <typename AwsAccountIdT = Aws::String>
87 SetAwsAccountId(std::forward<AwsAccountIdT>(value));
88 return *this;
89 }
91
93
96 inline const Aws::String& GetAwsService() const { return m_awsService; }
97 inline bool AwsServiceHasBeenSet() const { return m_awsServiceHasBeenSet; }
98 template <typename AwsServiceT = Aws::String>
99 void SetAwsService(AwsServiceT&& value) {
100 m_awsServiceHasBeenSet = true;
101 m_awsService = std::forward<AwsServiceT>(value);
102 }
103 template <typename AwsServiceT = Aws::String>
105 SetAwsService(std::forward<AwsServiceT>(value));
106 return *this;
107 }
109
111
114 inline InterfacePermissionType GetPermission() const { return m_permission; }
115 inline bool PermissionHasBeenSet() const { return m_permissionHasBeenSet; }
117 m_permissionHasBeenSet = true;
118 m_permission = value;
119 }
121 SetPermission(value);
122 return *this;
123 }
125
127
130 inline const NetworkInterfacePermissionState& GetPermissionState() const { return m_permissionState; }
131 inline bool PermissionStateHasBeenSet() const { return m_permissionStateHasBeenSet; }
132 template <typename PermissionStateT = NetworkInterfacePermissionState>
133 void SetPermissionState(PermissionStateT&& value) {
134 m_permissionStateHasBeenSet = true;
135 m_permissionState = std::forward<PermissionStateT>(value);
136 }
137 template <typename PermissionStateT = NetworkInterfacePermissionState>
139 SetPermissionState(std::forward<PermissionStateT>(value));
140 return *this;
141 }
143 private:
144 Aws::String m_networkInterfacePermissionId;
145
146 Aws::String m_networkInterfaceId;
147
148 Aws::String m_awsAccountId;
149
150 Aws::String m_awsService;
151
153
154 NetworkInterfacePermissionState m_permissionState;
155 bool m_networkInterfacePermissionIdHasBeenSet = false;
156 bool m_networkInterfaceIdHasBeenSet = false;
157 bool m_awsAccountIdHasBeenSet = false;
158 bool m_awsServiceHasBeenSet = false;
159 bool m_permissionHasBeenSet = false;
160 bool m_permissionStateHasBeenSet = false;
161};
162
163} // namespace Model
164} // namespace EC2
165} // 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