Package org.kie.api.definition.type

# Interface FactField

All Superinterfaces:
  `Externalizable`, `Serializable`

public interface FactField extends Externalizable
A field from a declared fact type

- ## Method Summary

  Modifier and Type
  Method
  Description
  `Object`
  `get(Object bean)`
  `List<Annotation>`
  `getFieldAnnotations()`
  Returns the list of field-level annotations used in this field definition
  `int`
  `getIndex()`
  Returns the index of this field in the field list for the defining fact type.
  `Map<String,Object>`
  `getMetaData()`
  Returns the annotations of this field definition as key-value pairs.
  `String`
  `getName()`
  `Class<?>`
  `getType()`
  `boolean`
  `isKey()`
  `void`
  `set(Object bean, Object value)`
  Sets the value of this field in the given fact.

  ### Methods inherited from interface java.io.Externalizable

  `readExternal, writeExternal`

- ## Method Details

  - ### getType

    Class<?> getType()
    Returns:
      type of this field.

  - ### getName

    String getName()
    Returns:
      name of this field.

  - ### isKey

    boolean isKey()
    Returns:
      true if this field is a key field. A key field is included in hashcode() calculation and on the equals() method evaluation. Non-key fields are not checked in this method.

  - ### set

    void set(Object bean, Object value)
    Sets the value of this field in the given fact.
    Parameters:
      `bean` - fact on which to set the field.
      `value` - the value to set on the field.

  - ### get

    Object get(Object bean)
    Parameters:
      `bean` - the fact from which the field will be read.
    Returns:
      the value of this field on the given fact.

  - ### getIndex

    int getIndex()
    Returns the index of this field in the field list for the defining fact type. The list (and thus the index) takes into account the fields inherited from the parent class, if any.
    Returns:
      the index of this field in the defining type

  - ### getFieldAnnotations

    List<Annotation> getFieldAnnotations()
    Returns the list of field-level annotations used in this field definition
    Returns:
      the list of field-level annotations

  - ### getMetaData

    Map<String,Object> getMetaData()
    Returns the annotations of this field definition as key-value pairs.
    Returns:
      a key-value map of the field-level annotations