/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Thing group indexing configuration.See Also:
AWS
* API Reference
Thing group indexing mode.
*/ inline const ThingGroupIndexingMode& GetThingGroupIndexingMode() const{ return m_thingGroupIndexingMode; } /** *Thing group indexing mode.
*/ inline bool ThingGroupIndexingModeHasBeenSet() const { return m_thingGroupIndexingModeHasBeenSet; } /** *Thing group indexing mode.
*/ inline void SetThingGroupIndexingMode(const ThingGroupIndexingMode& value) { m_thingGroupIndexingModeHasBeenSet = true; m_thingGroupIndexingMode = value; } /** *Thing group indexing mode.
*/ inline void SetThingGroupIndexingMode(ThingGroupIndexingMode&& value) { m_thingGroupIndexingModeHasBeenSet = true; m_thingGroupIndexingMode = std::move(value); } /** *Thing group indexing mode.
*/ inline ThingGroupIndexingConfiguration& WithThingGroupIndexingMode(const ThingGroupIndexingMode& value) { SetThingGroupIndexingMode(value); return *this;} /** *Thing group indexing mode.
*/ inline ThingGroupIndexingConfiguration& WithThingGroupIndexingMode(ThingGroupIndexingMode&& value) { SetThingGroupIndexingMode(std::move(value)); return *this;} /** *Contains fields that are indexed and whose types are already known by the * Fleet Indexing service. This is an optional field. For more information, see Managed * fields in the Amazon Web Services IoT Core Developer Guide.
*/ inline const Aws::VectorContains fields that are indexed and whose types are already known by the * Fleet Indexing service. This is an optional field. For more information, see Managed * fields in the Amazon Web Services IoT Core Developer Guide.
*/ inline bool ManagedFieldsHasBeenSet() const { return m_managedFieldsHasBeenSet; } /** *Contains fields that are indexed and whose types are already known by the * Fleet Indexing service. This is an optional field. For more information, see Managed * fields in the Amazon Web Services IoT Core Developer Guide.
*/ inline void SetManagedFields(const Aws::VectorContains fields that are indexed and whose types are already known by the * Fleet Indexing service. This is an optional field. For more information, see Managed * fields in the Amazon Web Services IoT Core Developer Guide.
*/ inline void SetManagedFields(Aws::VectorContains fields that are indexed and whose types are already known by the * Fleet Indexing service. This is an optional field. For more information, see Managed * fields in the Amazon Web Services IoT Core Developer Guide.
*/ inline ThingGroupIndexingConfiguration& WithManagedFields(const Aws::VectorContains fields that are indexed and whose types are already known by the * Fleet Indexing service. This is an optional field. For more information, see Managed * fields in the Amazon Web Services IoT Core Developer Guide.
*/ inline ThingGroupIndexingConfiguration& WithManagedFields(Aws::VectorContains fields that are indexed and whose types are already known by the * Fleet Indexing service. This is an optional field. For more information, see Managed * fields in the Amazon Web Services IoT Core Developer Guide.
*/ inline ThingGroupIndexingConfiguration& AddManagedFields(const Field& value) { m_managedFieldsHasBeenSet = true; m_managedFields.push_back(value); return *this; } /** *Contains fields that are indexed and whose types are already known by the * Fleet Indexing service. This is an optional field. For more information, see Managed * fields in the Amazon Web Services IoT Core Developer Guide.
*/ inline ThingGroupIndexingConfiguration& AddManagedFields(Field&& value) { m_managedFieldsHasBeenSet = true; m_managedFields.push_back(std::move(value)); return *this; } /** *A list of thing group fields to index. This list cannot contain any managed * fields. Use the GetIndexingConfiguration API to get a list of managed * fields.
Contains custom field names and their data type.
*/ inline const Aws::VectorA list of thing group fields to index. This list cannot contain any managed * fields. Use the GetIndexingConfiguration API to get a list of managed * fields.
Contains custom field names and their data type.
*/ inline bool CustomFieldsHasBeenSet() const { return m_customFieldsHasBeenSet; } /** *A list of thing group fields to index. This list cannot contain any managed * fields. Use the GetIndexingConfiguration API to get a list of managed * fields.
Contains custom field names and their data type.
*/ inline void SetCustomFields(const Aws::VectorA list of thing group fields to index. This list cannot contain any managed * fields. Use the GetIndexingConfiguration API to get a list of managed * fields.
Contains custom field names and their data type.
*/ inline void SetCustomFields(Aws::VectorA list of thing group fields to index. This list cannot contain any managed * fields. Use the GetIndexingConfiguration API to get a list of managed * fields.
Contains custom field names and their data type.
*/ inline ThingGroupIndexingConfiguration& WithCustomFields(const Aws::VectorA list of thing group fields to index. This list cannot contain any managed * fields. Use the GetIndexingConfiguration API to get a list of managed * fields.
Contains custom field names and their data type.
*/ inline ThingGroupIndexingConfiguration& WithCustomFields(Aws::VectorA list of thing group fields to index. This list cannot contain any managed * fields. Use the GetIndexingConfiguration API to get a list of managed * fields.
Contains custom field names and their data type.
*/ inline ThingGroupIndexingConfiguration& AddCustomFields(const Field& value) { m_customFieldsHasBeenSet = true; m_customFields.push_back(value); return *this; } /** *A list of thing group fields to index. This list cannot contain any managed * fields. Use the GetIndexingConfiguration API to get a list of managed * fields.
Contains custom field names and their data type.
*/ inline ThingGroupIndexingConfiguration& AddCustomFields(Field&& value) { m_customFieldsHasBeenSet = true; m_customFields.push_back(std::move(value)); return *this; } private: ThingGroupIndexingMode m_thingGroupIndexingMode; bool m_thingGroupIndexingModeHasBeenSet = false; Aws::Vector