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 void
checkSchemaField(SchemaField field)
protected void
checkSupportsDocValues()
List<org.apache.lucene.index.IndexableField>
createFields(SchemaField field, Object value)
org.apache.lucene.analysis.Analyzer
getIndexAnalyzer()
org.apache.lucene.analysis.Analyzer
getQueryAnalyzer()
org.apache.lucene.search.SortField
getSortField(SchemaField field, boolean top)
protected org.apache.lucene.search.Query
getSpecializedRangeQuery(QParser parser, SchemaField field, String part1, String part2, boolean minInclusive, boolean maxInclusive)
UninvertingReader.Type
getUninversionType(SchemaField sf)
protected void
init(IndexSchema schema, Map<String,String> args)
Object
marshalSortValue(Object value)
Object
unmarshalSortValue(Object value)
void
write(TextResponseWriter writer, String name, org.apache.lucene.index.IndexableField f)
-
Methods inherited from class org.apache.solr.schema.FieldType
createField, createField, getAnalyzerProperties, getClassArg, getDefaultMultiValueSelectorForSort, getDocValuesFormat, getExistenceQuery, getFieldQuery, getFieldTermQuery, 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
-
checkSchemaField
public void checkSchemaField(SchemaField field)
- Overrides:
checkSchemaField
in classFieldType
-
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:
write
in classFieldType
- Throws:
IOException
-
getSortField
public org.apache.lucene.search.SortField getSortField(SchemaField field, boolean top)
- Specified by:
getSortField
in classFieldType
-
getUninversionType
public UninvertingReader.Type getUninversionType(SchemaField sf)
- Specified by:
getUninversionType
in classFieldType
-
getIndexAnalyzer
public org.apache.lucene.analysis.Analyzer getIndexAnalyzer()
- Overrides:
getIndexAnalyzer
in classFieldType
-
getQueryAnalyzer
public org.apache.lucene.analysis.Analyzer getQueryAnalyzer()
- Overrides:
getQueryAnalyzer
in classFieldType
-
getSpecializedRangeQuery
protected org.apache.lucene.search.Query getSpecializedRangeQuery(QParser parser, SchemaField field, String part1, String part2, boolean minInclusive, boolean maxInclusive)
- Overrides:
getSpecializedRangeQuery
in classFieldType
-
checkSupportsDocValues
protected void checkSupportsDocValues()
- Overrides:
checkSupportsDocValues
in classFieldType
-
createFields
public List<org.apache.lucene.index.IndexableField> createFields(SchemaField field, Object value)
- Overrides:
createFields
in classFieldType
-
marshalSortValue
public Object marshalSortValue(Object value)
- Overrides:
marshalSortValue
in classFieldType
-
unmarshalSortValue
public Object unmarshalSortValue(Object value)
- Overrides:
unmarshalSortValue
in classFieldType
-
-