Class IndexOptions

java.lang.Object
com.mongodb.client.model.IndexOptions

public class IndexOptions extends Object
The options to apply to the creation of an index.
Since:
3.0
MongoDB documentation
Index options
  • Constructor Details

    • IndexOptions

      public IndexOptions()
  • Method Details

    • isBackground

      public boolean isBackground()
      Create the index in the background
      Returns:
      true if should create the index in the background
    • background

      public IndexOptions background(boolean background)
      Should the index should be created in the background
      Parameters:
      background - true if should create the index in the background
      Returns:
      this
    • isUnique

      public boolean isUnique()
      Gets if the index should be unique.
      Returns:
      true if the index should be unique
    • unique

      public IndexOptions unique(boolean unique)
      Should the index should be unique.
      Parameters:
      unique - if the index should be unique
      Returns:
      this
    • getName

      @Nullable public String getName()
      Gets the name of the index.
      Returns:
      the name of the index
    • name

      public IndexOptions name(@Nullable String name)
      Sets the name of the index.
      Parameters:
      name - of the index
      Returns:
      this
    • isSparse

      public boolean isSparse()
      If true, the index only references documents with the specified field
      Returns:
      if the index should only reference documents with the specified field
    • sparse

      public IndexOptions sparse(boolean sparse)
      Should the index only references documents with the specified field
      Parameters:
      sparse - if true, the index only references documents with the specified field
      Returns:
      this
    • getExpireAfter

      @Nullable public Long getExpireAfter(TimeUnit timeUnit)
      Gets the time to live for documents in the collection
      Parameters:
      timeUnit - the time unit
      Returns:
      the time to live for documents in the collection
      MongoDB documentation
      TTL
    • expireAfter

      public IndexOptions expireAfter(@Nullable Long expireAfter, TimeUnit timeUnit)
      Sets the time to live for documents in the collection
      Parameters:
      expireAfter - the time to live for documents in the collection
      timeUnit - the time unit for expireAfter
      Returns:
      this
      MongoDB documentation
      TTL
    • getVersion

      @Nullable public Integer getVersion()
      Gets the index version number.
      Returns:
      the index version number
    • version

      public IndexOptions version(@Nullable Integer version)
      Sets the index version number.
      Parameters:
      version - the index version number
      Returns:
      this
    • getWeights

      @Nullable public Bson getWeights()
      Gets the weighting object for use with a text index

      A document that represents field and weight pairs. The weight is an integer ranging from 1 to 99,999 and denotes the significance of the field relative to the other indexed fields in terms of the score.

      Returns:
      the weighting object
      MongoDB documentation
      Control Search Results with Weights
    • weights

      public IndexOptions weights(@Nullable Bson weights)
      Sets the weighting object for use with a text index.

      An document that represents field and weight pairs. The weight is an integer ranging from 1 to 99,999 and denotes the significance of the field relative to the other indexed fields in terms of the score.

      Parameters:
      weights - the weighting object
      Returns:
      this
      MongoDB documentation
      Control Search Results with Weights
    • getDefaultLanguage

      @Nullable public String getDefaultLanguage()
      Gets the language for a text index.

      The language that determines the list of stop words and the rules for the stemmer and tokenizer.

      Returns:
      the language for a text index.
      MongoDB documentation
      Text Search languages
    • defaultLanguage

      public IndexOptions defaultLanguage(@Nullable String defaultLanguage)
      Sets the language for the text index.

      The language that determines the list of stop words and the rules for the stemmer and tokenizer.

      Parameters:
      defaultLanguage - the language for the text index.
      Returns:
      this
      MongoDB documentation
      Text Search languages
    • getLanguageOverride

      @Nullable public String getLanguageOverride()
      Gets the name of the field that contains the language string.

      For text indexes, the name of the field, in the collection's documents, that contains the override language for the document.

      Returns:
      the name of the field that contains the language string.
      MongoDB documentation
      Language override
    • languageOverride

      public IndexOptions languageOverride(@Nullable String languageOverride)
      Sets the name of the field that contains the language string.

      For text indexes, the name of the field, in the collection's documents, that contains the override language for the document.

      Parameters:
      languageOverride - the name of the field that contains the language string.
      Returns:
      this
      MongoDB documentation
      Language override
    • getTextVersion

      @Nullable public Integer getTextVersion()
      The text index version number.
      Returns:
      the text index version number.
    • textVersion

      public IndexOptions textVersion(@Nullable Integer textVersion)
      Set the text index version number.
      Parameters:
      textVersion - the text index version number.
      Returns:
      this
    • getSphereVersion

      @Nullable public Integer getSphereVersion()
      Gets the 2dsphere index version number.
      Returns:
      the 2dsphere index version number
    • sphereVersion

      public IndexOptions sphereVersion(@Nullable Integer sphereVersion)
      Sets the 2dsphere index version number.
      Parameters:
      sphereVersion - the 2dsphere index version number.
      Returns:
      this
    • getBits

      @Nullable public Integer getBits()
      Gets the number of precision of the stored geohash value of the location data in 2d indexes.
      Returns:
      the number of precision of the stored geohash value
    • bits

      public IndexOptions bits(@Nullable Integer bits)
      Sets the number of precision of the stored geohash value of the location data in 2d indexes.
      Parameters:
      bits - the number of precision of the stored geohash value
      Returns:
      this
    • getMin

      @Nullable public Double getMin()
      Gets the lower inclusive boundary for the longitude and latitude values for 2d indexes..
      Returns:
      the lower inclusive boundary for the longitude and latitude values.
    • min

      public IndexOptions min(@Nullable Double min)
      Sets the lower inclusive boundary for the longitude and latitude values for 2d indexes..
      Parameters:
      min - the lower inclusive boundary for the longitude and latitude values
      Returns:
      this
    • getMax

      @Nullable public Double getMax()
      Gets the upper inclusive boundary for the longitude and latitude values for 2d indexes..
      Returns:
      the upper inclusive boundary for the longitude and latitude values.
    • max

      public IndexOptions max(@Nullable Double max)
      Sets the upper inclusive boundary for the longitude and latitude values for 2d indexes..
      Parameters:
      max - the upper inclusive boundary for the longitude and latitude values
      Returns:
      this
    • getBucketSize

      @Nullable @Deprecated public Double getBucketSize()
      Deprecated.
      geoHaystack is deprecated in MongoDB 4.4
      Gets the specified the number of units within which to group the location values for geoHaystack Indexes
      Returns:
      the specified the number of units within which to group the location values for geoHaystack Indexes
      MongoDB documentation
      geoHaystack Indexes
    • bucketSize

      @Deprecated public IndexOptions bucketSize(@Nullable Double bucketSize)
      Deprecated.
      geoHaystack is deprecated in MongoDB 4.4
      Sets the specified the number of units within which to group the location values for geoHaystack Indexes
      Parameters:
      bucketSize - the specified the number of units within which to group the location values for geoHaystack Indexes
      Returns:
      this
      MongoDB documentation
      geoHaystack Indexes
    • getStorageEngine

      @Nullable public Bson getStorageEngine()
      Gets the storage engine options document for this index.
      Returns:
      the storage engine options
      Since server release
      3.0
    • storageEngine

      public IndexOptions storageEngine(@Nullable Bson storageEngine)
      Sets the storage engine options document for this index.
      Parameters:
      storageEngine - the storage engine options
      Returns:
      this
      Since server release
      3.0
    • getPartialFilterExpression

      @Nullable public Bson getPartialFilterExpression()
      Get the filter expression for the documents to be included in the index or null if not set
      Returns:
      the filter expression for the documents to be included in the index or null if not set
      Since:
      3.2
      Since server release
      3.2
    • partialFilterExpression

      public IndexOptions partialFilterExpression(@Nullable Bson partialFilterExpression)
      Sets the filter expression for the documents to be included in the index
      Parameters:
      partialFilterExpression - the filter expression for the documents to be included in the index
      Returns:
      this
      Since:
      3.2
      Since server release
      3.2
    • getCollation

      @Nullable public Collation getCollation()
      Returns the collation options
      Returns:
      the collation options
      Since:
      3.4
      Since server release
      3.4
    • collation

      public IndexOptions collation(@Nullable Collation collation)
      Sets the collation options

      A null value represents the server default.

      Parameters:
      collation - the collation options to use
      Returns:
      this
      Since:
      3.4
      Since server release
      3.4
    • getWildcardProjection

      public Bson getWildcardProjection()
      Gets the wildcard projection of a wildcard index
      Returns:
      the wildcard projection
      Since:
      3.10
      Since server release
      4.2
    • wildcardProjection

      public IndexOptions wildcardProjection(Bson wildcardProjection)
      Sets the wildcard projection of a wildcard index
      Parameters:
      wildcardProjection - the wildcard projection
      Returns:
      this
      Since:
      3.10
      Since server release
      4.2
    • isHidden

      public boolean isHidden()
      Gets whether the index should not be used by the query planner when executing operations.
      Returns:
      true if the index should not be used by the query planner when executing operations.
      Since:
      4.1
      Since server release
      4.4
    • hidden

      public IndexOptions hidden(boolean hidden)
      Should the index not be used by the query planner when executing operations.
      Parameters:
      hidden - true if the index should be hidden
      Returns:
      this
      Since:
      4.1
      Since server release
      4.4
    • toString

      public String toString()
      Overrides:
      toString in class Object