AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
VpcEncryptionControl.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/VpcEncryptionControlMode.h>
11#include <aws/ec2/model/VpcEncryptionControlState.h>
12#include <aws/ec2/model/VpcEncryptionControlExclusions.h>
13#include <aws/core/utils/memory/stl/AWSVector.h>
14#include <aws/ec2/model/Tag.h>
15#include <utility>
16
17namespace Aws
18{
19namespace Utils
20{
21namespace Xml
22{
23 class XmlNode;
24} // namespace Xml
25} // namespace Utils
26namespace EC2
27{
28namespace Model
29{
30
32 {
33 public:
34 AWS_EC2_API VpcEncryptionControl() = default;
37
38 AWS_EC2_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
39 AWS_EC2_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
40
41
43
44 inline const Aws::String& GetVpcId() const { return m_vpcId; }
45 inline bool VpcIdHasBeenSet() const { return m_vpcIdHasBeenSet; }
46 template<typename VpcIdT = Aws::String>
47 void SetVpcId(VpcIdT&& value) { m_vpcIdHasBeenSet = true; m_vpcId = std::forward<VpcIdT>(value); }
48 template<typename VpcIdT = Aws::String>
49 VpcEncryptionControl& WithVpcId(VpcIdT&& value) { SetVpcId(std::forward<VpcIdT>(value)); return *this;}
51
53
54 inline const Aws::String& GetVpcEncryptionControlId() const { return m_vpcEncryptionControlId; }
55 inline bool VpcEncryptionControlIdHasBeenSet() const { return m_vpcEncryptionControlIdHasBeenSet; }
56 template<typename VpcEncryptionControlIdT = Aws::String>
57 void SetVpcEncryptionControlId(VpcEncryptionControlIdT&& value) { m_vpcEncryptionControlIdHasBeenSet = true; m_vpcEncryptionControlId = std::forward<VpcEncryptionControlIdT>(value); }
58 template<typename VpcEncryptionControlIdT = Aws::String>
59 VpcEncryptionControl& WithVpcEncryptionControlId(VpcEncryptionControlIdT&& value) { SetVpcEncryptionControlId(std::forward<VpcEncryptionControlIdT>(value)); return *this;}
61
63
64 inline VpcEncryptionControlMode GetMode() const { return m_mode; }
65 inline bool ModeHasBeenSet() const { return m_modeHasBeenSet; }
66 inline void SetMode(VpcEncryptionControlMode value) { m_modeHasBeenSet = true; m_mode = value; }
67 inline VpcEncryptionControl& WithMode(VpcEncryptionControlMode value) { SetMode(value); return *this;}
69
71
72 inline VpcEncryptionControlState GetState() const { return m_state; }
73 inline bool StateHasBeenSet() const { return m_stateHasBeenSet; }
74 inline void SetState(VpcEncryptionControlState value) { m_stateHasBeenSet = true; m_state = value; }
75 inline VpcEncryptionControl& WithState(VpcEncryptionControlState value) { SetState(value); return *this;}
77
79
80 inline const Aws::String& GetStateMessage() const { return m_stateMessage; }
81 inline bool StateMessageHasBeenSet() const { return m_stateMessageHasBeenSet; }
82 template<typename StateMessageT = Aws::String>
83 void SetStateMessage(StateMessageT&& value) { m_stateMessageHasBeenSet = true; m_stateMessage = std::forward<StateMessageT>(value); }
84 template<typename StateMessageT = Aws::String>
85 VpcEncryptionControl& WithStateMessage(StateMessageT&& value) { SetStateMessage(std::forward<StateMessageT>(value)); return *this;}
87
89
90 inline const VpcEncryptionControlExclusions& GetResourceExclusions() const { return m_resourceExclusions; }
91 inline bool ResourceExclusionsHasBeenSet() const { return m_resourceExclusionsHasBeenSet; }
92 template<typename ResourceExclusionsT = VpcEncryptionControlExclusions>
93 void SetResourceExclusions(ResourceExclusionsT&& value) { m_resourceExclusionsHasBeenSet = true; m_resourceExclusions = std::forward<ResourceExclusionsT>(value); }
94 template<typename ResourceExclusionsT = VpcEncryptionControlExclusions>
95 VpcEncryptionControl& WithResourceExclusions(ResourceExclusionsT&& value) { SetResourceExclusions(std::forward<ResourceExclusionsT>(value)); return *this;}
97
99
100 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
101 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
102 template<typename TagsT = Aws::Vector<Tag>>
103 void SetTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags = std::forward<TagsT>(value); }
104 template<typename TagsT = Aws::Vector<Tag>>
105 VpcEncryptionControl& WithTags(TagsT&& value) { SetTags(std::forward<TagsT>(value)); return *this;}
106 template<typename TagsT = Tag>
107 VpcEncryptionControl& AddTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags.emplace_back(std::forward<TagsT>(value)); return *this; }
109 private:
110
111 Aws::String m_vpcId;
112 bool m_vpcIdHasBeenSet = false;
113
114 Aws::String m_vpcEncryptionControlId;
115 bool m_vpcEncryptionControlIdHasBeenSet = false;
116
118 bool m_modeHasBeenSet = false;
119
121 bool m_stateHasBeenSet = false;
122
123 Aws::String m_stateMessage;
124 bool m_stateMessageHasBeenSet = false;
125
126 VpcEncryptionControlExclusions m_resourceExclusions;
127 bool m_resourceExclusionsHasBeenSet = false;
128
129 Aws::Vector<Tag> m_tags;
130 bool m_tagsHasBeenSet = false;
131 };
132
133} // namespace Model
134} // namespace EC2
135} // namespace Aws
const Aws::Vector< Tag > & GetTags() const
AWS_EC2_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
VpcEncryptionControlState GetState() const
VpcEncryptionControl & WithStateMessage(StateMessageT &&value)
void SetState(VpcEncryptionControlState value)
AWS_EC2_API void OutputToStream(Aws::OStream &oStream, const char *location) const
VpcEncryptionControl & WithMode(VpcEncryptionControlMode value)
void SetResourceExclusions(ResourceExclusionsT &&value)
VpcEncryptionControl & WithState(VpcEncryptionControlState value)
const Aws::String & GetVpcEncryptionControlId() const
void SetVpcEncryptionControlId(VpcEncryptionControlIdT &&value)
const Aws::String & GetStateMessage() const
VpcEncryptionControlMode GetMode() const
AWS_EC2_API VpcEncryptionControl & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
VpcEncryptionControl & WithTags(TagsT &&value)
AWS_EC2_API VpcEncryptionControl()=default
void SetStateMessage(StateMessageT &&value)
VpcEncryptionControl & WithVpcId(VpcIdT &&value)
const VpcEncryptionControlExclusions & GetResourceExclusions() const
AWS_EC2_API VpcEncryptionControl(const Aws::Utils::Xml::XmlNode &xmlNode)
VpcEncryptionControl & WithVpcEncryptionControlId(VpcEncryptionControlIdT &&value)
void SetMode(VpcEncryptionControlMode value)
VpcEncryptionControl & AddTags(TagsT &&value)
VpcEncryptionControl & WithResourceExclusions(ResourceExclusionsT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
std::basic_ostream< char, std::char_traits< char > > OStream