org.apache.lucene.analysis.tokenattributes

## Class PayloadAttributeImpl

- java.lang.Object
- - org.apache.lucene.util.AttributeImpl
  - - org.apache.lucene.analysis.tokenattributes.PayloadAttributeImpl

- All Implemented Interfaces:
    Cloneable, PayloadAttribute, Attribute

      public class PayloadAttributeImpl
      extends AttributeImpl
      implements PayloadAttribute, Cloneable

  Default implementation of `PayloadAttribute`.

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `PayloadAttributeImpl()` Initialize this attribute with no payload.
    `PayloadAttributeImpl(BytesRef payload)` Initialize this attribute with the given payload.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `clear()` Clears the values in this AttributeImpl and resets it to its default value.
    `PayloadAttributeImpl` | `clone()` In most cases the clone is, and should be, deep in order to be able to properly capture the state of all attributes.
    `void` | `copyTo(AttributeImpl target)` Copies the values from this Attribute into the passed-in target attribute.
    `boolean` | `equals(Object other)`
    `BytesRef` | `getPayload()` Returns this Token's payload.
    `int` | `hashCode()`
    `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` | `setPayload(BytesRef payload)` Sets this Token's payload.

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

      `end, reflectAsString`

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

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

- - ### Constructor Detail

    - #### PayloadAttributeImpl

          public PayloadAttributeImpl()

      Initialize this attribute with no payload.

    - #### PayloadAttributeImpl

          public PayloadAttributeImpl(BytesRef payload)

      Initialize this attribute with the given payload.

  - ### Method Detail

    - #### getPayload

          public BytesRef getPayload()

      Description copied from interface: `PayloadAttribute`
      Returns this Token's payload.
      Specified by:
        `getPayload` in interface `PayloadAttribute`
      See Also:
        `PayloadAttribute.setPayload(BytesRef)`

    - #### setPayload

          public void setPayload(BytesRef payload)

      Description copied from interface: `PayloadAttribute`
      Sets this Token's payload.
      Specified by:
        `setPayload` in interface `PayloadAttribute`
      See Also:
        `PayloadAttribute.getPayload()`

    - #### 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`

    - #### clone

          public PayloadAttributeImpl clone()

      Description copied from class: `AttributeImpl`
      In most cases the clone is, and should be, deep in order to be able to properly capture the state of all attributes.
      Overrides:
        `clone` in class `AttributeImpl`

    - #### equals

          public boolean equals(Object other)

      Overrides:
        `equals` in class `Object`

    - #### hashCode

          public int hashCode()

      Overrides:
        `hashCode` in class `Object`

    - #### 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!

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

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