/* * Copyright 2010-2023 Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). * You may not use this file except in compliance with the License. * A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file is distributed * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either * express or implied. See the License for the specific language governing * permissions and limitations under the License. */ package com.amazonaws.services.iot.model; import java.io.Serializable; /** *
* The thing indexing configuration. For more information, see Managing Thing Indexing. *
*/ public class ThingIndexingConfiguration implements Serializable { /** ** Thing indexing mode. Valid values are: *
** REGISTRY – Your thing index contains registry data only. *
** REGISTRY_AND_SHADOW - Your thing index contains registry and shadow data. *
** OFF - Thing indexing is disabled. *
*
* Constraints:
* Allowed Values: OFF, REGISTRY, REGISTRY_AND_SHADOW
*/
private String thingIndexingMode;
/**
*
* Thing connectivity indexing mode. Valid values are: *
** STATUS – Your thing index contains connectivity status. To enable thing * connectivity indexing, thingIndexMode must not be set to OFF. *
** OFF - Thing connectivity status indexing is disabled. *
*
* Constraints:
* Allowed Values: OFF, STATUS
*/
private String thingConnectivityIndexingMode;
/**
*
* Device Defender indexing mode. Valid values are: *
** VIOLATIONS – Your thing index contains Device Defender violations. To * enable Device Defender indexing, deviceDefenderIndexingMode must * not be set to OFF. *
** OFF - Device Defender indexing is disabled. *
** For more information about Device Defender violations, see Device Defender Detect. *
*
* Constraints:
* Allowed Values: OFF, VIOLATIONS
*/
private String deviceDefenderIndexingMode;
/**
*
* Named shadow indexing mode. Valid values are: *
** ON – Your thing index contains named shadow. To enable thing named shadow * indexing, namedShadowIndexingMode must not be set to OFF. *
** OFF - Named shadow indexing is disabled. *
** For more information about Shadows, see IoT Device Shadow service. *
*
* Constraints:
* Allowed Values: OFF, ON
*/
private String namedShadowIndexingMode;
/**
*
* Contains fields that are indexed and whose types are already known by the * Fleet Indexing service. *
*/ private java.util.List* Contains custom field names and their data type. *
*/ private java.util.List
* Provides additional filters for specific data sources. Named shadow is
* the only data source that currently supports and requires a filter. To
* add named shadows to your fleet indexing configuration, set
* namedShadowIndexingMode
to be ON
and specify
* your shadow names in filter
.
*
* Thing indexing mode. Valid values are: *
** REGISTRY – Your thing index contains registry data only. *
** REGISTRY_AND_SHADOW - Your thing index contains registry and shadow data. *
** OFF - Thing indexing is disabled. *
*
* Constraints:
* Allowed Values: OFF, REGISTRY, REGISTRY_AND_SHADOW
*
* @return
* Thing indexing mode. Valid values are: *
** REGISTRY – Your thing index contains registry data only. *
** REGISTRY_AND_SHADOW - Your thing index contains registry and * shadow data. *
** OFF - Thing indexing is disabled. *
** Thing indexing mode. Valid values are: *
** REGISTRY – Your thing index contains registry data only. *
** REGISTRY_AND_SHADOW - Your thing index contains registry and shadow data. *
** OFF - Thing indexing is disabled. *
*
* Constraints:
* Allowed Values: OFF, REGISTRY, REGISTRY_AND_SHADOW
*
* @param thingIndexingMode
* Thing indexing mode. Valid values are: *
** REGISTRY – Your thing index contains registry data only. *
** REGISTRY_AND_SHADOW - Your thing index contains registry and * shadow data. *
** OFF - Thing indexing is disabled. *
** Thing indexing mode. Valid values are: *
** REGISTRY – Your thing index contains registry data only. *
** REGISTRY_AND_SHADOW - Your thing index contains registry and shadow data. *
** OFF - Thing indexing is disabled. *
** Returns a reference to this object so that method calls can be chained * together. *
* Constraints:
* Allowed Values: OFF, REGISTRY, REGISTRY_AND_SHADOW
*
* @param thingIndexingMode
* Thing indexing mode. Valid values are: *
** REGISTRY – Your thing index contains registry data only. *
** REGISTRY_AND_SHADOW - Your thing index contains registry and * shadow data. *
** OFF - Thing indexing is disabled. *
** Thing indexing mode. Valid values are: *
** REGISTRY – Your thing index contains registry data only. *
** REGISTRY_AND_SHADOW - Your thing index contains registry and shadow data. *
** OFF - Thing indexing is disabled. *
*
* Constraints:
* Allowed Values: OFF, REGISTRY, REGISTRY_AND_SHADOW
*
* @param thingIndexingMode
* Thing indexing mode. Valid values are: *
** REGISTRY – Your thing index contains registry data only. *
** REGISTRY_AND_SHADOW - Your thing index contains registry and * shadow data. *
** OFF - Thing indexing is disabled. *
** Thing indexing mode. Valid values are: *
** REGISTRY – Your thing index contains registry data only. *
** REGISTRY_AND_SHADOW - Your thing index contains registry and shadow data. *
** OFF - Thing indexing is disabled. *
** Returns a reference to this object so that method calls can be chained * together. *
* Constraints:
* Allowed Values: OFF, REGISTRY, REGISTRY_AND_SHADOW
*
* @param thingIndexingMode
* Thing indexing mode. Valid values are: *
** REGISTRY – Your thing index contains registry data only. *
** REGISTRY_AND_SHADOW - Your thing index contains registry and * shadow data. *
** OFF - Thing indexing is disabled. *
** Thing connectivity indexing mode. Valid values are: *
** STATUS – Your thing index contains connectivity status. To enable thing * connectivity indexing, thingIndexMode must not be set to OFF. *
** OFF - Thing connectivity status indexing is disabled. *
*
* Constraints:
* Allowed Values: OFF, STATUS
*
* @return
* Thing connectivity indexing mode. Valid values are: *
** STATUS – Your thing index contains connectivity status. To enable * thing connectivity indexing, thingIndexMode must not be * set to OFF. *
** OFF - Thing connectivity status indexing is disabled. *
** Thing connectivity indexing mode. Valid values are: *
** STATUS – Your thing index contains connectivity status. To enable thing * connectivity indexing, thingIndexMode must not be set to OFF. *
** OFF - Thing connectivity status indexing is disabled. *
*
* Constraints:
* Allowed Values: OFF, STATUS
*
* @param thingConnectivityIndexingMode
* Thing connectivity indexing mode. Valid values are: *
** STATUS – Your thing index contains connectivity status. To * enable thing connectivity indexing, thingIndexMode must * not be set to OFF. *
** OFF - Thing connectivity status indexing is disabled. *
** Thing connectivity indexing mode. Valid values are: *
** STATUS – Your thing index contains connectivity status. To enable thing * connectivity indexing, thingIndexMode must not be set to OFF. *
** OFF - Thing connectivity status indexing is disabled. *
** Returns a reference to this object so that method calls can be chained * together. *
* Constraints:
* Allowed Values: OFF, STATUS
*
* @param thingConnectivityIndexingMode
* Thing connectivity indexing mode. Valid values are: *
** STATUS – Your thing index contains connectivity status. To * enable thing connectivity indexing, thingIndexMode must * not be set to OFF. *
** OFF - Thing connectivity status indexing is disabled. *
** Thing connectivity indexing mode. Valid values are: *
** STATUS – Your thing index contains connectivity status. To enable thing * connectivity indexing, thingIndexMode must not be set to OFF. *
** OFF - Thing connectivity status indexing is disabled. *
*
* Constraints:
* Allowed Values: OFF, STATUS
*
* @param thingConnectivityIndexingMode
* Thing connectivity indexing mode. Valid values are: *
** STATUS – Your thing index contains connectivity status. To * enable thing connectivity indexing, thingIndexMode must * not be set to OFF. *
** OFF - Thing connectivity status indexing is disabled. *
** Thing connectivity indexing mode. Valid values are: *
** STATUS – Your thing index contains connectivity status. To enable thing * connectivity indexing, thingIndexMode must not be set to OFF. *
** OFF - Thing connectivity status indexing is disabled. *
** Returns a reference to this object so that method calls can be chained * together. *
* Constraints:
* Allowed Values: OFF, STATUS
*
* @param thingConnectivityIndexingMode
* Thing connectivity indexing mode. Valid values are: *
** STATUS – Your thing index contains connectivity status. To * enable thing connectivity indexing, thingIndexMode must * not be set to OFF. *
** OFF - Thing connectivity status indexing is disabled. *
** Device Defender indexing mode. Valid values are: *
** VIOLATIONS – Your thing index contains Device Defender violations. To * enable Device Defender indexing, deviceDefenderIndexingMode must * not be set to OFF. *
** OFF - Device Defender indexing is disabled. *
** For more information about Device Defender violations, see Device Defender Detect. *
*
* Constraints:
* Allowed Values: OFF, VIOLATIONS
*
* @return
* Device Defender indexing mode. Valid values are: *
** VIOLATIONS – Your thing index contains Device Defender * violations. To enable Device Defender indexing, * deviceDefenderIndexingMode must not be set to OFF. *
** OFF - Device Defender indexing is disabled. *
** For more information about Device Defender violations, see Device Defender Detect. *
* @see DeviceDefenderIndexingMode */ public String getDeviceDefenderIndexingMode() { return deviceDefenderIndexingMode; } /** ** Device Defender indexing mode. Valid values are: *
** VIOLATIONS – Your thing index contains Device Defender violations. To * enable Device Defender indexing, deviceDefenderIndexingMode must * not be set to OFF. *
** OFF - Device Defender indexing is disabled. *
** For more information about Device Defender violations, see Device Defender Detect. *
*
* Constraints:
* Allowed Values: OFF, VIOLATIONS
*
* @param deviceDefenderIndexingMode
* Device Defender indexing mode. Valid values are: *
** VIOLATIONS – Your thing index contains Device Defender * violations. To enable Device Defender indexing, * deviceDefenderIndexingMode must not be set to OFF. *
** OFF - Device Defender indexing is disabled. *
** For more information about Device Defender violations, see Device Defender Detect. *
* @see DeviceDefenderIndexingMode */ public void setDeviceDefenderIndexingMode(String deviceDefenderIndexingMode) { this.deviceDefenderIndexingMode = deviceDefenderIndexingMode; } /** ** Device Defender indexing mode. Valid values are: *
** VIOLATIONS – Your thing index contains Device Defender violations. To * enable Device Defender indexing, deviceDefenderIndexingMode must * not be set to OFF. *
** OFF - Device Defender indexing is disabled. *
** For more information about Device Defender violations, see Device Defender Detect. *
** Returns a reference to this object so that method calls can be chained * together. *
* Constraints:
* Allowed Values: OFF, VIOLATIONS
*
* @param deviceDefenderIndexingMode
* Device Defender indexing mode. Valid values are: *
** VIOLATIONS – Your thing index contains Device Defender * violations. To enable Device Defender indexing, * deviceDefenderIndexingMode must not be set to OFF. *
** OFF - Device Defender indexing is disabled. *
** For more information about Device Defender violations, see Device Defender Detect. *
* @return A reference to this updated object so that method calls can be * chained together. * @see DeviceDefenderIndexingMode */ public ThingIndexingConfiguration withDeviceDefenderIndexingMode( String deviceDefenderIndexingMode) { this.deviceDefenderIndexingMode = deviceDefenderIndexingMode; return this; } /** ** Device Defender indexing mode. Valid values are: *
** VIOLATIONS – Your thing index contains Device Defender violations. To * enable Device Defender indexing, deviceDefenderIndexingMode must * not be set to OFF. *
** OFF - Device Defender indexing is disabled. *
** For more information about Device Defender violations, see Device Defender Detect. *
*
* Constraints:
* Allowed Values: OFF, VIOLATIONS
*
* @param deviceDefenderIndexingMode
* Device Defender indexing mode. Valid values are: *
** VIOLATIONS – Your thing index contains Device Defender * violations. To enable Device Defender indexing, * deviceDefenderIndexingMode must not be set to OFF. *
** OFF - Device Defender indexing is disabled. *
** For more information about Device Defender violations, see Device Defender Detect. *
* @see DeviceDefenderIndexingMode */ public void setDeviceDefenderIndexingMode(DeviceDefenderIndexingMode deviceDefenderIndexingMode) { this.deviceDefenderIndexingMode = deviceDefenderIndexingMode.toString(); } /** ** Device Defender indexing mode. Valid values are: *
** VIOLATIONS – Your thing index contains Device Defender violations. To * enable Device Defender indexing, deviceDefenderIndexingMode must * not be set to OFF. *
** OFF - Device Defender indexing is disabled. *
** For more information about Device Defender violations, see Device Defender Detect. *
** Returns a reference to this object so that method calls can be chained * together. *
* Constraints:
* Allowed Values: OFF, VIOLATIONS
*
* @param deviceDefenderIndexingMode
* Device Defender indexing mode. Valid values are: *
** VIOLATIONS – Your thing index contains Device Defender * violations. To enable Device Defender indexing, * deviceDefenderIndexingMode must not be set to OFF. *
** OFF - Device Defender indexing is disabled. *
** For more information about Device Defender violations, see Device Defender Detect. *
* @return A reference to this updated object so that method calls can be * chained together. * @see DeviceDefenderIndexingMode */ public ThingIndexingConfiguration withDeviceDefenderIndexingMode( DeviceDefenderIndexingMode deviceDefenderIndexingMode) { this.deviceDefenderIndexingMode = deviceDefenderIndexingMode.toString(); return this; } /** ** Named shadow indexing mode. Valid values are: *
** ON – Your thing index contains named shadow. To enable thing named shadow * indexing, namedShadowIndexingMode must not be set to OFF. *
** OFF - Named shadow indexing is disabled. *
** For more information about Shadows, see IoT Device Shadow service. *
*
* Constraints:
* Allowed Values: OFF, ON
*
* @return
* Named shadow indexing mode. Valid values are: *
** ON – Your thing index contains named shadow. To enable thing * named shadow indexing, namedShadowIndexingMode must not be * set to OFF. *
** OFF - Named shadow indexing is disabled. *
** For more information about Shadows, see IoT Device Shadow service. *
* @see NamedShadowIndexingMode */ public String getNamedShadowIndexingMode() { return namedShadowIndexingMode; } /** ** Named shadow indexing mode. Valid values are: *
** ON – Your thing index contains named shadow. To enable thing named shadow * indexing, namedShadowIndexingMode must not be set to OFF. *
** OFF - Named shadow indexing is disabled. *
** For more information about Shadows, see IoT Device Shadow service. *
*
* Constraints:
* Allowed Values: OFF, ON
*
* @param namedShadowIndexingMode
* Named shadow indexing mode. Valid values are: *
** ON – Your thing index contains named shadow. To enable thing * named shadow indexing, namedShadowIndexingMode must not * be set to OFF. *
** OFF - Named shadow indexing is disabled. *
** For more information about Shadows, see IoT Device Shadow service. *
* @see NamedShadowIndexingMode */ public void setNamedShadowIndexingMode(String namedShadowIndexingMode) { this.namedShadowIndexingMode = namedShadowIndexingMode; } /** ** Named shadow indexing mode. Valid values are: *
** ON – Your thing index contains named shadow. To enable thing named shadow * indexing, namedShadowIndexingMode must not be set to OFF. *
** OFF - Named shadow indexing is disabled. *
** For more information about Shadows, see IoT Device Shadow service. *
** Returns a reference to this object so that method calls can be chained * together. *
* Constraints:
* Allowed Values: OFF, ON
*
* @param namedShadowIndexingMode
* Named shadow indexing mode. Valid values are: *
** ON – Your thing index contains named shadow. To enable thing * named shadow indexing, namedShadowIndexingMode must not * be set to OFF. *
** OFF - Named shadow indexing is disabled. *
** For more information about Shadows, see IoT Device Shadow service. *
* @return A reference to this updated object so that method calls can be * chained together. * @see NamedShadowIndexingMode */ public ThingIndexingConfiguration withNamedShadowIndexingMode(String namedShadowIndexingMode) { this.namedShadowIndexingMode = namedShadowIndexingMode; return this; } /** ** Named shadow indexing mode. Valid values are: *
** ON – Your thing index contains named shadow. To enable thing named shadow * indexing, namedShadowIndexingMode must not be set to OFF. *
** OFF - Named shadow indexing is disabled. *
** For more information about Shadows, see IoT Device Shadow service. *
*
* Constraints:
* Allowed Values: OFF, ON
*
* @param namedShadowIndexingMode
* Named shadow indexing mode. Valid values are: *
** ON – Your thing index contains named shadow. To enable thing * named shadow indexing, namedShadowIndexingMode must not * be set to OFF. *
** OFF - Named shadow indexing is disabled. *
** For more information about Shadows, see IoT Device Shadow service. *
* @see NamedShadowIndexingMode */ public void setNamedShadowIndexingMode(NamedShadowIndexingMode namedShadowIndexingMode) { this.namedShadowIndexingMode = namedShadowIndexingMode.toString(); } /** ** Named shadow indexing mode. Valid values are: *
** ON – Your thing index contains named shadow. To enable thing named shadow * indexing, namedShadowIndexingMode must not be set to OFF. *
** OFF - Named shadow indexing is disabled. *
** For more information about Shadows, see IoT Device Shadow service. *
** Returns a reference to this object so that method calls can be chained * together. *
* Constraints:
* Allowed Values: OFF, ON
*
* @param namedShadowIndexingMode
* Named shadow indexing mode. Valid values are: *
** ON – Your thing index contains named shadow. To enable thing * named shadow indexing, namedShadowIndexingMode must not * be set to OFF. *
** OFF - Named shadow indexing is disabled. *
** For more information about Shadows, see IoT Device Shadow service. *
* @return A reference to this updated object so that method calls can be * chained together. * @see NamedShadowIndexingMode */ public ThingIndexingConfiguration withNamedShadowIndexingMode( NamedShadowIndexingMode namedShadowIndexingMode) { this.namedShadowIndexingMode = namedShadowIndexingMode.toString(); return this; } /** ** Contains fields that are indexed and whose types are already known by the * Fleet Indexing service. *
* * @return* Contains fields that are indexed and whose types are already * known by the Fleet Indexing service. *
*/ public java.util.List* Contains fields that are indexed and whose types are already known by the * Fleet Indexing service. *
* * @param managedFields* Contains fields that are indexed and whose types are already * known by the Fleet Indexing service. *
*/ public void setManagedFields(java.util.Collection* Contains fields that are indexed and whose types are already known by the * Fleet Indexing service. *
** Returns a reference to this object so that method calls can be chained * together. * * @param managedFields
* Contains fields that are indexed and whose types are already * known by the Fleet Indexing service. *
* @return A reference to this updated object so that method calls can be * chained together. */ public ThingIndexingConfiguration withManagedFields(Field... managedFields) { if (getManagedFields() == null) { this.managedFields = new java.util.ArrayList* Contains fields that are indexed and whose types are already known by the * Fleet Indexing service. *
** Returns a reference to this object so that method calls can be chained * together. * * @param managedFields
* Contains fields that are indexed and whose types are already * known by the Fleet Indexing service. *
* @return A reference to this updated object so that method calls can be * chained together. */ public ThingIndexingConfiguration withManagedFields(java.util.Collection* Contains custom field names and their data type. *
* * @return* Contains custom field names and their data type. *
*/ public java.util.List* Contains custom field names and their data type. *
* * @param customFields* Contains custom field names and their data type. *
*/ public void setCustomFields(java.util.Collection* Contains custom field names and their data type. *
** Returns a reference to this object so that method calls can be chained * together. * * @param customFields
* Contains custom field names and their data type. *
* @return A reference to this updated object so that method calls can be * chained together. */ public ThingIndexingConfiguration withCustomFields(Field... customFields) { if (getCustomFields() == null) { this.customFields = new java.util.ArrayList* Contains custom field names and their data type. *
** Returns a reference to this object so that method calls can be chained * together. * * @param customFields
* Contains custom field names and their data type. *
* @return A reference to this updated object so that method calls can be * chained together. */ public ThingIndexingConfiguration withCustomFields(java.util.Collection
* Provides additional filters for specific data sources. Named shadow is
* the only data source that currently supports and requires a filter. To
* add named shadows to your fleet indexing configuration, set
* namedShadowIndexingMode
to be ON
and specify
* your shadow names in filter
.
*
* Provides additional filters for specific data sources. Named
* shadow is the only data source that currently supports and
* requires a filter. To add named shadows to your fleet indexing
* configuration, set namedShadowIndexingMode
to be
* ON
and specify your shadow names in
* filter
.
*
* Provides additional filters for specific data sources. Named shadow is
* the only data source that currently supports and requires a filter. To
* add named shadows to your fleet indexing configuration, set
* namedShadowIndexingMode
to be ON
and specify
* your shadow names in filter
.
*
* Provides additional filters for specific data sources. Named
* shadow is the only data source that currently supports and
* requires a filter. To add named shadows to your fleet indexing
* configuration, set namedShadowIndexingMode
to be
* ON
and specify your shadow names in
* filter
.
*
* Provides additional filters for specific data sources. Named shadow is
* the only data source that currently supports and requires a filter. To
* add named shadows to your fleet indexing configuration, set
* namedShadowIndexingMode
to be ON
and specify
* your shadow names in filter
.
*
* Returns a reference to this object so that method calls can be chained * together. * * @param filter
* Provides additional filters for specific data sources. Named
* shadow is the only data source that currently supports and
* requires a filter. To add named shadows to your fleet indexing
* configuration, set namedShadowIndexingMode
to be
* ON
and specify your shadow names in
* filter
.
*