org.apache.lucene.search

## Class MaxNonCompetitiveBoostAttributeImpl

- java.lang.Object
- - org.apache.lucene.util.AttributeImpl
  - - org.apache.lucene.search.MaxNonCompetitiveBoostAttributeImpl

- All Implemented Interfaces:
    Cloneable, MaxNonCompetitiveBoostAttribute, Attribute

      public final class MaxNonCompetitiveBoostAttributeImpl
      extends AttributeImpl
      implements MaxNonCompetitiveBoostAttribute

  Implementation class for `MaxNonCompetitiveBoostAttribute`.
  NOTE: This API is for internal purposes only and might change in incompatible ways in the next release.

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `MaxNonCompetitiveBoostAttributeImpl()`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `clear()` Clears the values in this AttributeImpl and resets it to its default value.
    `void` | `copyTo(AttributeImpl target)` Copies the values from this Attribute into the passed-in target attribute.
    `BytesRef` | `getCompetitiveTerm()` This is the term or `null` of the term that triggered the boost change.
    `float` | `getMaxNonCompetitiveBoost()` This is the maximum boost that would not be competitive.
    `void` | `reflectWith(AttributeReflector reflector)` This method is for introspection of attributes, it should simply add the key/values this attribute holds to the given `AttributeReflector`.
    `void` | `setCompetitiveTerm(BytesRef competitiveTerm)` This is the term or `null` of the term that triggered the boost change.
    `void` | `setMaxNonCompetitiveBoost(float maxNonCompetitiveBoost)` This is the maximum boost that would not be competitive.

    - ### Methods inherited from class org.apache.lucene.util.AttributeImpl

      `clone, end, reflectAsString`

    - ### Methods inherited from class java.lang.Object

      `equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### MaxNonCompetitiveBoostAttributeImpl

          public MaxNonCompetitiveBoostAttributeImpl()

  - ### Method Detail

    - #### setMaxNonCompetitiveBoost

          public void setMaxNonCompetitiveBoost(float maxNonCompetitiveBoost)

      Description copied from interface: `MaxNonCompetitiveBoostAttribute`
      This is the maximum boost that would not be competitive.
      Specified by:
        `setMaxNonCompetitiveBoost` in interface `MaxNonCompetitiveBoostAttribute`

    - #### getMaxNonCompetitiveBoost

          public float getMaxNonCompetitiveBoost()

      Description copied from interface: `MaxNonCompetitiveBoostAttribute`
      This is the maximum boost that would not be competitive. Default is negative infinity, which means every term is competitive.
      Specified by:
        `getMaxNonCompetitiveBoost` in interface `MaxNonCompetitiveBoostAttribute`

    - #### setCompetitiveTerm

          public void setCompetitiveTerm(BytesRef competitiveTerm)

      Description copied from interface: `MaxNonCompetitiveBoostAttribute`
      This is the term or `null` of the term that triggered the boost change.
      Specified by:
        `setCompetitiveTerm` in interface `MaxNonCompetitiveBoostAttribute`

    - #### getCompetitiveTerm

          public BytesRef getCompetitiveTerm()

      Description copied from interface: `MaxNonCompetitiveBoostAttribute`
      This is the term or `null` of the term that triggered the boost change. Default is `null`, which means every term is competitoive.
      Specified by:
        `getCompetitiveTerm` in interface `MaxNonCompetitiveBoostAttribute`

    - #### clear

          public void clear()

      Description copied from class: `AttributeImpl`
      Clears the values in this AttributeImpl and resets it to its default value. If this implementation implements more than one Attribute interface it clears all.
      Specified by:
        `clear` in class `AttributeImpl`

    - #### copyTo

          public void copyTo(AttributeImpl target)

      Description copied from class: `AttributeImpl`
      Copies the values from this Attribute into the passed-in target attribute. The target implementation must support all the Attributes this implementation supports.
      Specified by:
        `copyTo` in class `AttributeImpl`

    - #### reflectWith

          public void reflectWith(AttributeReflector reflector)

      Description copied from class: `AttributeImpl`
      This method is for introspection of attributes, it should simply add the key/values this attribute holds to the given `AttributeReflector`.

      Implementations look like this (e.g. for a combined attribute implementation):

             public void reflectWith(AttributeReflector reflector) {
               reflector.reflect(CharTermAttribute.class, "term", term());
               reflector.reflect(PositionIncrementAttribute.class, "positionIncrement", getPositionIncrement());
             }

      If you implement this method, make sure that for each invocation, the same set of `Attribute` interfaces and keys are passed to `AttributeReflector.reflect(java.lang.Class<? extends org.apache.lucene.util.Attribute>, java.lang.String, java.lang.Object)` in the same order, but possibly different values. So don't automatically exclude e.g. `null` properties!

      Important for migration to Lucene 6: The default implementation is implemented for backwards compatibility in Lucene 5 and calls `AttributeReflector.reflect(java.lang.Class<? extends org.apache.lucene.util.Attribute>, java.lang.String, java.lang.Object)` for all non-static fields from the implementing class, using the field name as key and the field value as value. The Attribute class is also determined by reflection. Please note that the default implementation can only handle single-Attribute implementations.

      Please don't use the default implementation anymore, because it will be made abstract in Lucene 6! See above for implementation example.

      Overrides:
        `reflectWith` in class `AttributeImpl`
      See Also:
        `AttributeImpl.reflectAsString(boolean)`

Copyright © 2000-2017 Apache Software Foundation. All Rights Reserved.