Class FieldDefinition

java.lang.Object
org.ametys.cms.search.solr.schema.FieldDefinition
All Implemented Interfaces:
SchemaDefinition
Direct Known Subclasses:
DynamicFieldDefinition

public class FieldDefinition extends Object implements SchemaDefinition
Represents a field definition in a solr schema.
  • Field Details

    • _name

      protected String _name
      The field name, can contain a star character to represent a dynamic field (i.e. *_type).
    • _type

      protected String _type
      The field type.
    • _multiValued

      protected boolean _multiValued
      If the field is multi-valued.
    • _docValues

      protected boolean _docValues
      If the field is stored as docValues.
    • _indexed

      protected boolean _indexed
      Whether the field is indexed.
    • _stored

      protected boolean _stored
      Whether the field is stored.
  • Constructor Details

    • FieldDefinition

      public FieldDefinition(String name, String type, boolean multiValued, boolean docValues)
      Build a field definition, indexed and stored.
      Parameters:
      name - The field name, can contain a star character to represent a dynamic field (i.e. *_type).
      type - The field type.
      multiValued - true if the field is multi-valued.
      docValues - true if the field is stored as docValues.
    • FieldDefinition

      public FieldDefinition(String name, String type, boolean multiValued, boolean docValues, boolean indexed, boolean stored)
      Build a field definition.
      Parameters:
      name - The field name, can contain a star character to represent a dynamic field (i.e. *_type).
      type - The field type.
      multiValued - true if the field is multi-valued.
      docValues - true if the field is stored as docValues.
      indexed - true if the field is indexed.
      stored - true if the field is stored.
    • FieldDefinition

      public FieldDefinition(Map<String,Object> attributes)
      Build a field definition from a map of attributes.
      Parameters:
      attributes - the Map of attributes.
  • Method Details

    • getName

      public String getName()
      Get the field name.
      Returns:
      The field name.
    • setName

      public void setName(String name)
      Set the field name.
      Parameters:
      name - the field name.
    • getType

      public String getType()
      Get the field type.
      Returns:
      The field type.
    • setType

      public void setType(String type)
      Set the field type.
      Parameters:
      type - the field type.
    • isMultiValued

      public boolean isMultiValued()
      If the field is multi-valued.
      Returns:
      true if the field is multi-valued, false otherwise.
    • setMultiValued

      public void setMultiValued(boolean multiValued)
      Set if the field is multi-valued.
      Parameters:
      multiValued - true if the field is multi-valued.
    • isDocValues

      public boolean isDocValues()
      True to store the field as docValues.
      Returns:
      true to store the field as docValues, false otherwise.
    • setDocValues

      public void setDocValues(boolean docValues)
      Set if the field is stored as docValues.
      Parameters:
      docValues - true if the field is stored as docValues.
    • isIndexed

      public boolean isIndexed()
      True to store the field as indexed.
      Returns:
      true to store the field as indexed, false otherwise.
    • setIndexed

      public void setIndexed(boolean indexed)
      Set if the field is stored as indexed.
      Parameters:
      indexed - true if the field is stored as indexed.
    • isStored

      public boolean isStored()
      True to store the field as stored.
      Returns:
      true to store the field as stored, false otherwise.
    • setStored

      public void setStored(boolean stored)
      Set if the field is stored as stored.
      Parameters:
      stored - true if the field is stored as stored.
    • _getAttributes

      Get the attributes to build the field.
      Returns:
      the attributes as a map
    • getSchemaUpdate

      public org.apache.solr.client.solrj.request.schema.SchemaRequest.Update getSchemaUpdate()
      Description copied from interface: SchemaDefinition
      Get the schema request update.
      Specified by:
      getSchemaUpdate in interface SchemaDefinition
      Returns:
      The update request
    • exists

      public boolean exists(SchemaFields schemaFields)
      Description copied from interface: SchemaDefinition
      Test if the definition is already defined
      Specified by:
      exists in interface SchemaDefinition
      Parameters:
      schemaFields - the existing schema fields
      Returns:
      true if the definition is in the schema fields