Package org.apache.solr.schema
Class PrimitiveFieldType
- java.lang.Object
-
- org.apache.solr.schema.FieldProperties
-
- org.apache.solr.schema.FieldType
-
- org.apache.solr.schema.PrimitiveFieldType
-
- Direct Known Subclasses:
AbstractEnumField
,BoolField
,NumericFieldType
,StrField
public abstract class PrimitiveFieldType extends FieldType
Abstract class defining shared behavior for primitive types Intended to be used as base class for non-analyzed fields like int, float, string, date etc, and set proper defaults for them
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.apache.solr.schema.FieldType
FieldType.DefaultAnalyzer, FieldType.MultiValueSelector
-
-
Field Summary
-
Fields inherited from class org.apache.solr.schema.FieldType
ANALYZER, args, AUTO_GENERATE_PHRASE_QUERIES, CHAR_FILTER, CHAR_FILTERS, CLASS_NAME, docValuesFormat, ENABLE_GRAPH_QUERIES, falseProperties, FILTER, FILTERS, INDEX, INDEX_ANALYZER, MULTI_TERM, MULTI_TERM_ANALYZER, POLY_FIELD_SEPARATOR, postingsFormat, properties, QUERY, QUERY_ANALYZER, similarity, SIMILARITY, similarityFactory, SYNONYM_QUERY_STYLE, TOKENIZER, trueProperties, TYPE, TYPE_NAME, typeName
-
Fields inherited from class org.apache.solr.schema.FieldProperties
BINARY, DOC_VALUES, INDEXED, LARGE_FIELD, MULTIVALUED, OMIT_NORMS, OMIT_POSITIONS, OMIT_TF_POSITIONS, REQUIRED, SORT_MISSING_FIRST, SORT_MISSING_LAST, STORE_OFFSETS, STORE_TERMOFFSETS, STORE_TERMPAYLOADS, STORE_TERMPOSITIONS, STORE_TERMVECTORS, STORED, TOKENIZED, UNINVERTIBLE, USE_DOCVALUES_AS_STORED
-
-
Constructor Summary
Constructors Constructor Description PrimitiveFieldType()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
checkSupportsDocValues()
Called byFieldType.checkSchemaField(SchemaField)
if the field has docValues.protected boolean
enableDocValuesByDefault()
Returns whether this field type should enable docValues by default for schemaVersion >= 1.7.FieldType.MultiValueSelector
getDefaultMultiValueSelectorForSort(SchemaField field, boolean reverse)
Method for indicating whichFieldType.MultiValueSelector
(if any) should be used when sorting on a multivalued field of this type for the specified direction (asc/desc).protected void
init(IndexSchema schema, Map<String,String> args)
subclasses should initialize themselves with the args provided and remove valid arguments.-
Methods inherited from class org.apache.solr.schema.FieldType
checkSchemaField, createField, createField, createFields, getAnalyzerProperties, getClassArg, getDocValuesFormat, getExistenceQuery, getFieldQuery, getFieldTermQuery, getIndexAnalyzer, getNamedPropertyValues, getNonFieldPropertyArgs, getNumberType, getNumericSort, getPostingsFormat, getPrefixQuery, getQueryAnalyzer, getRangeQuery, getRewriteMethod, getSetQuery, getSimilarity, getSimilarityFactory, getSingleValueSource, getSortedNumericSortField, getSortedSetSortField, getSortField, getSortField, getSpecializedExistenceQuery, getSpecializedRangeQuery, getStringSort, getTypeName, getUninversionType, getValueSource, hasProperty, indexedToReadable, indexedToReadable, isExplicitAnalyzer, isExplicitQueryAnalyzer, isMultiValued, isPointField, isPolyField, isTokenized, isUtf8Field, marshalBase64SortValue, marshalSortValue, marshalStringSortValue, multiValuedFieldCache, readableToIndexed, readableToIndexed, restrictProps, setArgs, setIndexAnalyzer, setIsExplicitAnalyzer, setIsExplicitQueryAnalyzer, setQueryAnalyzer, setSimilarity, storedToIndexed, storedToReadable, supportsAnalyzers, toExternal, toInternal, toNativeType, toObject, toObject, toString, treatUnboundedRangeAsExistence, unmarshalBase64SortValue, unmarshalSortValue, unmarshalStringSortValue, useDocValuesAsStored, write, write
-
-
-
-
Method Detail
-
init
protected void init(IndexSchema schema, Map<String,String> args)
Description copied from class:FieldType
subclasses should initialize themselves with the args provided and remove valid arguments. leftover arguments will cause an exception. Common boolean properties have already been handled.
-
checkSupportsDocValues
protected void checkSupportsDocValues()
Description copied from class:FieldType
Called byFieldType.checkSchemaField(SchemaField)
if the field has docValues. By default none do.- Overrides:
checkSupportsDocValues
in classFieldType
-
enableDocValuesByDefault
protected boolean enableDocValuesByDefault()
Description copied from class:FieldType
Returns whether this field type should enable docValues by default for schemaVersion >= 1.7. This should not be enabled for fields that did not have docValues implemented by Solr 9.7, as users may have indexed documents without docValues (since they weren't supported). Flipping the default docValues values when they upgrade to a new version will break their index compatibility.New field types can enable this without issue, as long as they support docValues.
- Overrides:
enableDocValuesByDefault
in classFieldType
-
getDefaultMultiValueSelectorForSort
public FieldType.MultiValueSelector getDefaultMultiValueSelectorForSort(SchemaField field, boolean reverse)
Description copied from class:FieldType
Method for indicating whichFieldType.MultiValueSelector
(if any) should be used when sorting on a multivalued field of this type for the specified direction (asc/desc). The default implementation returnsnull
(for all inputs).- Overrides:
getDefaultMultiValueSelectorForSort
in classFieldType
- Parameters:
field
- The SchemaField (of this type) in questionreverse
- false if this is an ascending sort, true if this is a descending sort.- Returns:
- the implicit selector to use for this direction, or null if implicit sorting on the specified direction is not supported and should return an error.
- See Also:
FieldType.MultiValueSelector
-
-