AWS SDK for C++  1.8.99
AWS SDK for C++
Filter.h
Go to the documentation of this file.
1 
6 #pragma once
7 #include <aws/ec2/EC2_EXPORTS.h>
11 #include <utility>
12 
13 namespace Aws
14 {
15 namespace Utils
16 {
17 namespace Xml
18 {
19  class XmlNode;
20 } // namespace Xml
21 } // namespace Utils
22 namespace EC2
23 {
24 namespace Model
25 {
26 
43  {
44  public:
45  Filter();
46  Filter(const Aws::Utils::Xml::XmlNode& xmlNode);
47  Filter& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
48 
49  void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
50  void OutputToStream(Aws::OStream& oStream, const char* location) const;
51 
52 
56  inline const Aws::String& GetName() const{ return m_name; }
57 
61  inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
62 
66  inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; }
67 
71  inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); }
72 
76  inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); }
77 
81  inline Filter& WithName(const Aws::String& value) { SetName(value); return *this;}
82 
86  inline Filter& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;}
87 
91  inline Filter& WithName(const char* value) { SetName(value); return *this;}
92 
93 
97  inline const Aws::Vector<Aws::String>& GetValues() const{ return m_values; }
98 
102  inline bool ValuesHasBeenSet() const { return m_valuesHasBeenSet; }
103 
107  inline void SetValues(const Aws::Vector<Aws::String>& value) { m_valuesHasBeenSet = true; m_values = value; }
108 
112  inline void SetValues(Aws::Vector<Aws::String>&& value) { m_valuesHasBeenSet = true; m_values = std::move(value); }
113 
117  inline Filter& WithValues(const Aws::Vector<Aws::String>& value) { SetValues(value); return *this;}
118 
122  inline Filter& WithValues(Aws::Vector<Aws::String>&& value) { SetValues(std::move(value)); return *this;}
123 
127  inline Filter& AddValues(const Aws::String& value) { m_valuesHasBeenSet = true; m_values.push_back(value); return *this; }
128 
132  inline Filter& AddValues(Aws::String&& value) { m_valuesHasBeenSet = true; m_values.push_back(std::move(value)); return *this; }
133 
137  inline Filter& AddValues(const char* value) { m_valuesHasBeenSet = true; m_values.push_back(value); return *this; }
138 
139  private:
140 
141  Aws::String m_name;
142  bool m_nameHasBeenSet;
143 
144  Aws::Vector<Aws::String> m_values;
145  bool m_valuesHasBeenSet;
146  };
147 
148 } // namespace Model
149 } // namespace EC2
150 } // namespace Aws
void SetName(Aws::String &&value)
Definition: Filter.h:71
const Aws::Vector< Aws::String > & GetValues() const
Definition: Filter.h:97
const Aws::String & GetName() const
Definition: Filter.h:56
Filter & WithName(const Aws::String &value)
Definition: Filter.h:81
void SetValues(Aws::Vector< Aws::String > &&value)
Definition: Filter.h:112
Filter & WithName(Aws::String &&value)
Definition: Filter.h:86
std::vector< T, Aws::Allocator< T > > Vector
Definition: AWSVector.h:17
int index
Definition: cJSON.h:171
bool NameHasBeenSet() const
Definition: Filter.h:61
void SetName(const Aws::String &value)
Definition: Filter.h:66
void SetValues(const Aws::Vector< Aws::String > &value)
Definition: Filter.h:107
std::basic_ostream< char, std::char_traits< char > > OStream
Definition: AWSStreamFwd.h:21
bool ValuesHasBeenSet() const
Definition: Filter.h:102
Filter & WithValues(const Aws::Vector< Aws::String > &value)
Definition: Filter.h:117
void SetName(const char *value)
Definition: Filter.h:76
Filter & AddValues(Aws::String &&value)
Definition: Filter.h:132
Filter & WithName(const char *value)
Definition: Filter.h:91
Filter & WithValues(Aws::Vector< Aws::String > &&value)
Definition: Filter.h:122
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
Filter & AddValues(const char *value)
Definition: Filter.h:137
Filter & AddValues(const Aws::String &value)
Definition: Filter.h:127
#define AWS_EC2_API
Definition: EC2_EXPORTS.h:28