AWS SDK for C++

AWS SDK for C++ Version 1.11.717

Loading...
Searching...
No Matches
RuleOption.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/core/utils/memory/stl/AWSVector.h>
10#include <aws/ec2/EC2_EXPORTS.h>
11
12#include <utility>
13
14namespace Aws {
15namespace Utils {
16namespace Xml {
17class XmlNode;
18} // namespace Xml
19} // namespace Utils
20namespace EC2 {
21namespace Model {
22
29 public:
30 AWS_EC2_API RuleOption() = default;
31 AWS_EC2_API RuleOption(const Aws::Utils::Xml::XmlNode& xmlNode);
32 AWS_EC2_API RuleOption& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
33
34 AWS_EC2_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
35 AWS_EC2_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
36
38
41 inline const Aws::String& GetKeyword() const { return m_keyword; }
42 inline bool KeywordHasBeenSet() const { return m_keywordHasBeenSet; }
43 template <typename KeywordT = Aws::String>
44 void SetKeyword(KeywordT&& value) {
45 m_keywordHasBeenSet = true;
46 m_keyword = std::forward<KeywordT>(value);
47 }
48 template <typename KeywordT = Aws::String>
49 RuleOption& WithKeyword(KeywordT&& value) {
50 SetKeyword(std::forward<KeywordT>(value));
51 return *this;
52 }
54
56
59 inline const Aws::Vector<Aws::String>& GetSettings() const { return m_settings; }
60 inline bool SettingsHasBeenSet() const { return m_settingsHasBeenSet; }
61 template <typename SettingsT = Aws::Vector<Aws::String>>
62 void SetSettings(SettingsT&& value) {
63 m_settingsHasBeenSet = true;
64 m_settings = std::forward<SettingsT>(value);
65 }
66 template <typename SettingsT = Aws::Vector<Aws::String>>
67 RuleOption& WithSettings(SettingsT&& value) {
68 SetSettings(std::forward<SettingsT>(value));
69 return *this;
70 }
71 template <typename SettingsT = Aws::String>
72 RuleOption& AddSettings(SettingsT&& value) {
73 m_settingsHasBeenSet = true;
74 m_settings.emplace_back(std::forward<SettingsT>(value));
75 return *this;
76 }
78 private:
79 Aws::String m_keyword;
80
81 Aws::Vector<Aws::String> m_settings;
82 bool m_keywordHasBeenSet = false;
83 bool m_settingsHasBeenSet = false;
84};
85
86} // namespace Model
87} // namespace EC2
88} // namespace Aws
void SetSettings(SettingsT &&value)
Definition RuleOption.h:62
RuleOption & WithSettings(SettingsT &&value)
Definition RuleOption.h:67
bool KeywordHasBeenSet() const
Definition RuleOption.h:42
const Aws::Vector< Aws::String > & GetSettings() const
Definition RuleOption.h:59
RuleOption & AddSettings(SettingsT &&value)
Definition RuleOption.h:72
AWS_EC2_API void OutputToStream(Aws::OStream &oStream, const char *location) const
const Aws::String & GetKeyword() const
Definition RuleOption.h:41
AWS_EC2_API RuleOption()=default
AWS_EC2_API RuleOption & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
void SetKeyword(KeywordT &&value)
Definition RuleOption.h:44
RuleOption & WithKeyword(KeywordT &&value)
Definition RuleOption.h:49
AWS_EC2_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
AWS_EC2_API RuleOption(const Aws::Utils::Xml::XmlNode &xmlNode)
bool SettingsHasBeenSet() const
Definition RuleOption.h:60
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