Class AbstractMDIndexOptions<T extends AbstractMDIndexOptions<T>>

java.lang.Object
com.arangodb.model.IndexOptions<T>
com.arangodb.model.AbstractMDIndexOptions<T>
Direct Known Subclasses:
MDIndexOptions, MDPrefixedIndexOptions

public abstract class AbstractMDIndexOptions<T extends AbstractMDIndexOptions<T>> extends IndexOptions<T>
Since:
ArangoDB 3.12
Author:
Michele Rastelli
  • Constructor Details

    • AbstractMDIndexOptions

      protected AbstractMDIndexOptions()
  • Method Details

    • getType

      public abstract IndexType getType()
    • getFields

      public Iterable<String> getFields()
    • getUnique

      public Boolean getUnique()
    • unique

      public T unique(Boolean unique)
      Parameters:
      unique - if true, then create a unique index
      Returns:
      options
    • getFieldValueTypes

      public MDIFieldValueTypes getFieldValueTypes()
    • fieldValueTypes

      public T fieldValueTypes(MDIFieldValueTypes fieldValueTypes)
      Parameters:
      fieldValueTypes - must be MDIFieldValueTypes.DOUBLE, currently only doubles are supported as values.
      Returns:
      options
    • getEstimates

      public Boolean getEstimates()
    • estimates

      public T estimates(Boolean estimates)
      Parameters:
      estimates - controls whether index selectivity estimates are maintained for the index. Not maintaining index selectivity estimates can have a slightly positive impact on write performance. The downside of turning off index selectivity estimates is that the query optimizer is not able to determine the usefulness of different competing indexes in AQL queries when there are multiple candidate indexes to choose from. The estimates attribute is optional and defaults to true if not set. It cannot be disabled for non-unique multi-dimensional indexes because they have a fixed selectivity estimate of 1.
      Returns:
      options
    • getSparse

      public Boolean getSparse()
    • sparse

      public T sparse(Boolean sparse)
      Parameters:
      sparse - if true, then create a sparse index
      Returns:
      options
    • getStoredValues

      public Iterable<String> getStoredValues()
    • storedValues

      public T storedValues(Iterable<String> storedValues)
      Parameters:
      storedValues - can contain an array of paths to additional attributes to store in the index. These additional attributes cannot be used for index lookups or for sorting, but they can be used for projections. This allows an index to fully cover more queries and avoid extra document lookups. You can have the same attributes in storedValues and fields as the attributes in fields cannot be used for projections, but you can also store additional attributes that are not listed in fields. Attributes in storedValues cannot overlap with the attributes specified in prefixFields. Non-existing attributes are stored as null values inside storedValues. The maximum number of attributes in storedValues is 32.
      Returns:
      options