AWS SDK for C++  1.9.129
AWS SDK for C++
ThingGroupIndexingConfiguration.h
Go to the documentation of this file.
1 
6 #pragma once
7 #include <aws/iot/IoT_EXPORTS.h>
10 #include <aws/iot/model/Field.h>
11 #include <utility>
12 
13 namespace Aws
14 {
15 namespace Utils
16 {
17 namespace Json
18 {
19  class JsonValue;
20  class JsonView;
21 } // namespace Json
22 } // namespace Utils
23 namespace IoT
24 {
25 namespace Model
26 {
27 
34  {
35  public:
40 
41 
45  inline const ThingGroupIndexingMode& GetThingGroupIndexingMode() const{ return m_thingGroupIndexingMode; }
46 
50  inline bool ThingGroupIndexingModeHasBeenSet() const { return m_thingGroupIndexingModeHasBeenSet; }
51 
55  inline void SetThingGroupIndexingMode(const ThingGroupIndexingMode& value) { m_thingGroupIndexingModeHasBeenSet = true; m_thingGroupIndexingMode = value; }
56 
60  inline void SetThingGroupIndexingMode(ThingGroupIndexingMode&& value) { m_thingGroupIndexingModeHasBeenSet = true; m_thingGroupIndexingMode = std::move(value); }
61 
65  inline ThingGroupIndexingConfiguration& WithThingGroupIndexingMode(const ThingGroupIndexingMode& value) { SetThingGroupIndexingMode(value); return *this;}
66 
70  inline ThingGroupIndexingConfiguration& WithThingGroupIndexingMode(ThingGroupIndexingMode&& value) { SetThingGroupIndexingMode(std::move(value)); return *this;}
71 
72 
77  inline const Aws::Vector<Field>& GetManagedFields() const{ return m_managedFields; }
78 
83  inline bool ManagedFieldsHasBeenSet() const { return m_managedFieldsHasBeenSet; }
84 
89  inline void SetManagedFields(const Aws::Vector<Field>& value) { m_managedFieldsHasBeenSet = true; m_managedFields = value; }
90 
95  inline void SetManagedFields(Aws::Vector<Field>&& value) { m_managedFieldsHasBeenSet = true; m_managedFields = std::move(value); }
96 
101  inline ThingGroupIndexingConfiguration& WithManagedFields(const Aws::Vector<Field>& value) { SetManagedFields(value); return *this;}
102 
107  inline ThingGroupIndexingConfiguration& WithManagedFields(Aws::Vector<Field>&& value) { SetManagedFields(std::move(value)); return *this;}
108 
113  inline ThingGroupIndexingConfiguration& AddManagedFields(const Field& value) { m_managedFieldsHasBeenSet = true; m_managedFields.push_back(value); return *this; }
114 
119  inline ThingGroupIndexingConfiguration& AddManagedFields(Field&& value) { m_managedFieldsHasBeenSet = true; m_managedFields.push_back(std::move(value)); return *this; }
120 
121 
127  inline const Aws::Vector<Field>& GetCustomFields() const{ return m_customFields; }
128 
134  inline bool CustomFieldsHasBeenSet() const { return m_customFieldsHasBeenSet; }
135 
141  inline void SetCustomFields(const Aws::Vector<Field>& value) { m_customFieldsHasBeenSet = true; m_customFields = value; }
142 
148  inline void SetCustomFields(Aws::Vector<Field>&& value) { m_customFieldsHasBeenSet = true; m_customFields = std::move(value); }
149 
155  inline ThingGroupIndexingConfiguration& WithCustomFields(const Aws::Vector<Field>& value) { SetCustomFields(value); return *this;}
156 
162  inline ThingGroupIndexingConfiguration& WithCustomFields(Aws::Vector<Field>&& value) { SetCustomFields(std::move(value)); return *this;}
163 
169  inline ThingGroupIndexingConfiguration& AddCustomFields(const Field& value) { m_customFieldsHasBeenSet = true; m_customFields.push_back(value); return *this; }
170 
176  inline ThingGroupIndexingConfiguration& AddCustomFields(Field&& value) { m_customFieldsHasBeenSet = true; m_customFields.push_back(std::move(value)); return *this; }
177 
178  private:
179 
180  ThingGroupIndexingMode m_thingGroupIndexingMode;
181  bool m_thingGroupIndexingModeHasBeenSet;
182 
183  Aws::Vector<Field> m_managedFields;
184  bool m_managedFieldsHasBeenSet;
185 
186  Aws::Vector<Field> m_customFields;
187  bool m_customFieldsHasBeenSet;
188  };
189 
190 } // namespace Model
191 } // namespace IoT
192 } // namespace Aws
Aws::IoT::Model::ThingGroupIndexingConfiguration::operator=
ThingGroupIndexingConfiguration & operator=(Aws::Utils::Json::JsonView jsonValue)
Aws::IoT::Model::ThingGroupIndexingConfiguration::CustomFieldsHasBeenSet
bool CustomFieldsHasBeenSet() const
Definition: ThingGroupIndexingConfiguration.h:134
Field.h
Aws::IoT::Model::ThingGroupIndexingConfiguration::WithCustomFields
ThingGroupIndexingConfiguration & WithCustomFields(Aws::Vector< Field > &&value)
Definition: ThingGroupIndexingConfiguration.h:162
Aws::IoT::Model::ThingGroupIndexingConfiguration::SetThingGroupIndexingMode
void SetThingGroupIndexingMode(const ThingGroupIndexingMode &value)
Definition: ThingGroupIndexingConfiguration.h:55
Aws::IoT::Model::ThingGroupIndexingConfiguration::SetManagedFields
void SetManagedFields(Aws::Vector< Field > &&value)
Definition: ThingGroupIndexingConfiguration.h:95
Aws::IoT::Model::ThingGroupIndexingConfiguration::SetCustomFields
void SetCustomFields(const Aws::Vector< Field > &value)
Definition: ThingGroupIndexingConfiguration.h:141
Aws::IoT::Model::ThingGroupIndexingConfiguration::ManagedFieldsHasBeenSet
bool ManagedFieldsHasBeenSet() const
Definition: ThingGroupIndexingConfiguration.h:83
Aws::IoT::Model::ThingGroupIndexingConfiguration::ThingGroupIndexingModeHasBeenSet
bool ThingGroupIndexingModeHasBeenSet() const
Definition: ThingGroupIndexingConfiguration.h:50
Aws::IoT::Model::ThingGroupIndexingConfiguration::ThingGroupIndexingConfiguration
ThingGroupIndexingConfiguration()
Aws::Vector
std::vector< T, Aws::Allocator< T > > Vector
Definition: AWSVector.h:17
Aws::IoT::Model::ThingGroupIndexingConfiguration::GetCustomFields
const Aws::Vector< Field > & GetCustomFields() const
Definition: ThingGroupIndexingConfiguration.h:127
Aws::IoT::Model::ThingGroupIndexingConfiguration::GetThingGroupIndexingMode
const ThingGroupIndexingMode & GetThingGroupIndexingMode() const
Definition: ThingGroupIndexingConfiguration.h:45
Aws::IoT::Model::ThingGroupIndexingConfiguration::ThingGroupIndexingConfiguration
ThingGroupIndexingConfiguration(Aws::Utils::Json::JsonView jsonValue)
AWSVector.h
ThingGroupIndexingMode.h
Aws::IoT::Model::ThingGroupIndexingConfiguration::WithCustomFields
ThingGroupIndexingConfiguration & WithCustomFields(const Aws::Vector< Field > &value)
Definition: ThingGroupIndexingConfiguration.h:155
Aws::IoT::Model::ThingGroupIndexingConfiguration::WithThingGroupIndexingMode
ThingGroupIndexingConfiguration & WithThingGroupIndexingMode(const ThingGroupIndexingMode &value)
Definition: ThingGroupIndexingConfiguration.h:65
Aws::IoT::Model::ThingGroupIndexingConfiguration::AddManagedFields
ThingGroupIndexingConfiguration & AddManagedFields(Field &&value)
Definition: ThingGroupIndexingConfiguration.h:119
Aws::IoT::Model::ThingGroupIndexingConfiguration::GetManagedFields
const Aws::Vector< Field > & GetManagedFields() const
Definition: ThingGroupIndexingConfiguration.h:77
Aws::IoT::Model::ThingGroupIndexingConfiguration::WithManagedFields
ThingGroupIndexingConfiguration & WithManagedFields(const Aws::Vector< Field > &value)
Definition: ThingGroupIndexingConfiguration.h:101
Aws::IoT::Model::ThingGroupIndexingConfiguration::AddCustomFields
ThingGroupIndexingConfiguration & AddCustomFields(Field &&value)
Definition: ThingGroupIndexingConfiguration.h:176
Aws::IoT::Model::ThingGroupIndexingConfiguration
Definition: ThingGroupIndexingConfiguration.h:34
Aws::IoT::Model::ThingGroupIndexingConfiguration::AddManagedFields
ThingGroupIndexingConfiguration & AddManagedFields(const Field &value)
Definition: ThingGroupIndexingConfiguration.h:113
Aws::IoT::Model::Field
Definition: Field.h:33
Aws::Utils::Json::JsonView
Definition: JsonSerializer.h:235
Aws::Utils::Json::JsonValue
Definition: JsonSerializer.h:33
Aws::IoT::Model::ThingGroupIndexingConfiguration::Jsonize
Aws::Utils::Json::JsonValue Jsonize() const
Aws::IoT::Model::ThingGroupIndexingConfiguration::WithThingGroupIndexingMode
ThingGroupIndexingConfiguration & WithThingGroupIndexingMode(ThingGroupIndexingMode &&value)
Definition: ThingGroupIndexingConfiguration.h:70
Aws
Definition: AccessManagementClient.h:15
Aws::IoT::Model::ThingGroupIndexingConfiguration::SetCustomFields
void SetCustomFields(Aws::Vector< Field > &&value)
Definition: ThingGroupIndexingConfiguration.h:148
Aws::IoT::Model::ThingGroupIndexingConfiguration::SetManagedFields
void SetManagedFields(const Aws::Vector< Field > &value)
Definition: ThingGroupIndexingConfiguration.h:89
Aws::IoT::Model::ThingGroupIndexingConfiguration::AddCustomFields
ThingGroupIndexingConfiguration & AddCustomFields(const Field &value)
Definition: ThingGroupIndexingConfiguration.h:169
Aws::IoT::Model::ThingGroupIndexingConfiguration::SetThingGroupIndexingMode
void SetThingGroupIndexingMode(ThingGroupIndexingMode &&value)
Definition: ThingGroupIndexingConfiguration.h:60
AWS_IOT_API
#define AWS_IOT_API
Definition: IoT_EXPORTS.h:28
Aws::IoT::Model::ThingGroupIndexingConfiguration::WithManagedFields
ThingGroupIndexingConfiguration & WithManagedFields(Aws::Vector< Field > &&value)
Definition: ThingGroupIndexingConfiguration.h:107
Aws::IoT::Model::ThingGroupIndexingMode
ThingGroupIndexingMode
Definition: ThingGroupIndexingMode.h:17
IoT_EXPORTS.h