Package org.apache.solr.schema
Class ICUCollationField
- java.lang.Object
-
- org.apache.solr.schema.FieldProperties
-
- org.apache.solr.schema.FieldType
-
- org.apache.solr.schema.ICUCollationField
-
public class ICUCollationField extends FieldType
Field for collated sort keys. These can be used for locale-sensitive sort and range queries.This field can be created in two ways:
- Based upon a system collator associated with a Locale.
- Based upon a tailored ruleset.
Using a System collator:
- locale: RFC 3066 locale ID (mandatory)
- strength: 'primary','secondary','tertiary', 'quaternary', or 'identical' (optional)
- decomposition: 'no', or 'canonical' (optional)
Using a Tailored ruleset:
- custom: UTF-8 text file containing rules supported by RuleBasedCollator (mandatory)
- strength: 'primary','secondary','tertiary', 'quaternary', or 'identical' (optional)
- decomposition: 'no' or 'canonical' (optional)
Expert options:
- alternate: 'shifted' or 'non-ignorable'. Can be used to ignore punctuation/whitespace.
- caseLevel: 'true' or 'false'. Useful with strength=primary to ignore accents but not case.
- caseFirst: 'lower' or 'upper'. Useful to control which is sorted first when case is not ignored.
- numeric: 'true' or 'false'. Digits are sorted according to numeric value, e.g. foobar-9 sorts before foobar-10
- variableTop: single character or contraction. Controls what is variable for 'alternate'
- See Also:
Collator,ULocale,RuleBasedCollator
-
-
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 ICUCollationField()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voidcheckSupportsDocValues()List<org.apache.lucene.index.IndexableField>createFields(SchemaField field, Object value)org.apache.lucene.analysis.AnalyzergetIndexAnalyzer()org.apache.lucene.analysis.AnalyzergetQueryAnalyzer()org.apache.lucene.search.SortFieldgetSortField(SchemaField field, boolean top)protected org.apache.lucene.search.QuerygetSpecializedRangeQuery(QParser parser, SchemaField field, String part1, String part2, boolean minInclusive, boolean maxInclusive)UninvertingReader.TypegetUninversionType(SchemaField sf)protected voidinit(IndexSchema schema, Map<String,String> args)ObjectmarshalSortValue(Object value)ObjectunmarshalSortValue(Object value)voidwrite(TextResponseWriter writer, String name, org.apache.lucene.index.IndexableField f)-
Methods inherited from class org.apache.solr.schema.FieldType
checkSchemaField, createField, createField, getAnalyzerProperties, getClassArg, getDefaultMultiValueSelectorForSort, getDocValuesFormat, getExistenceQuery, getFieldQuery, getNamedPropertyValues, getNonFieldPropertyArgs, getNumberType, getNumericSort, getPostingsFormat, getPrefixQuery, getRangeQuery, getRewriteMethod, getSetQuery, getSimilarity, getSimilarityFactory, getSingleValueSource, getSortedNumericSortField, getSortedSetSortField, getSortField, getSpecializedExistenceQuery, getStringSort, getTypeName, getValueSource, hasProperty, indexedToReadable, indexedToReadable, isExplicitAnalyzer, isExplicitQueryAnalyzer, isMultiValued, isPointField, isPolyField, isTokenized, isUtf8Field, marshalBase64SortValue, marshalStringSortValue, multiValuedFieldCache, readableToIndexed, readableToIndexed, restrictProps, setArgs, setIndexAnalyzer, setIsExplicitAnalyzer, setIsExplicitQueryAnalyzer, setQueryAnalyzer, setSimilarity, storedToIndexed, storedToReadable, supportsAnalyzers, toExternal, toInternal, toNativeType, toObject, toObject, toString, treatUnboundedRangeAsExistence, unmarshalBase64SortValue, unmarshalStringSortValue, useDocValuesAsStored, write
-
-
-
-
Method Detail
-
init
protected void init(IndexSchema schema, Map<String,String> args)
-
write
public void write(TextResponseWriter writer, String name, org.apache.lucene.index.IndexableField f) throws IOException
- Specified by:
writein classFieldType- Throws:
IOException
-
getSortField
public org.apache.lucene.search.SortField getSortField(SchemaField field, boolean top)
- Specified by:
getSortFieldin classFieldType
-
getUninversionType
public UninvertingReader.Type getUninversionType(SchemaField sf)
- Specified by:
getUninversionTypein classFieldType
-
getIndexAnalyzer
public org.apache.lucene.analysis.Analyzer getIndexAnalyzer()
- Overrides:
getIndexAnalyzerin classFieldType
-
getQueryAnalyzer
public org.apache.lucene.analysis.Analyzer getQueryAnalyzer()
- Overrides:
getQueryAnalyzerin classFieldType
-
getSpecializedRangeQuery
protected org.apache.lucene.search.Query getSpecializedRangeQuery(QParser parser, SchemaField field, String part1, String part2, boolean minInclusive, boolean maxInclusive)
- Overrides:
getSpecializedRangeQueryin classFieldType
-
checkSupportsDocValues
protected void checkSupportsDocValues()
- Overrides:
checkSupportsDocValuesin classFieldType
-
createFields
public List<org.apache.lucene.index.IndexableField> createFields(SchemaField field, Object value)
- Overrides:
createFieldsin classFieldType
-
marshalSortValue
public Object marshalSortValue(Object value)
- Overrides:
marshalSortValuein classFieldType
-
unmarshalSortValue
public Object unmarshalSortValue(Object value)
- Overrides:
unmarshalSortValuein classFieldType
-
-