Class Codec
- java.lang.Object
-
- org.apache.lucene.codecs.Codec
-
- All Implemented Interfaces:
NamedSPILoader.NamedSPI
- Direct Known Subclasses:
FilterCodec,Lucene912Codec
public abstract class Codec extends Object implements NamedSPILoader.NamedSPI
Encodes/decodes an inverted index segment.Note, when extending this class, the name (
getName()) is written into the index. In order for the segment to be read, the name must resolve to your implementation viaforName(String). This method uses Java'sService Provider Interface(SPI) to resolve codec names.If you implement your own codec, make sure that it has a no-arg constructor so SPI can load it.
- See Also:
ServiceLoader
-
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description static Set<String>availableCodecs()returns a list of all available codec namesabstract CompoundFormatcompoundFormat()Encodes/decodes compound filesabstract DocValuesFormatdocValuesFormat()Encodes/decodes docvaluesabstract FieldInfosFormatfieldInfosFormat()Encodes/decodes field infos filestatic CodecforName(String name)looks up a codec by namestatic CodecgetDefault()expert: returns the default codec used for newly createdIndexWriterConfigs.StringgetName()Returns this codec's nameabstract KnnVectorsFormatknnVectorsFormat()Encodes/decodes numeric vector fieldsabstract LiveDocsFormatliveDocsFormat()Encodes/decodes live docsabstract NormsFormatnormsFormat()Encodes/decodes document normalization valuesabstract PointsFormatpointsFormat()Encodes/decodes points indexabstract PostingsFormatpostingsFormat()Encodes/decodes postingsstatic voidreloadCodecs(ClassLoader classloader)Reloads the codec list from the givenClassLoader.abstract SegmentInfoFormatsegmentInfoFormat()Encodes/decodes segment info filestatic voidsetDefault(Codec codec)expert: sets the default codec used for newly createdIndexWriterConfigs.abstract StoredFieldsFormatstoredFieldsFormat()Encodes/decodes stored fieldsabstract TermVectorsFormattermVectorsFormat()Encodes/decodes term vectorsStringtoString()returns the codec's name.
-
-
-
Constructor Detail
-
Codec
protected Codec(String name)
Creates a new codec.The provided name will be written into the index segment: in order to for the segment to be read this class should be registered with Java's SPI mechanism (registered in META-INF/ of your jar file, etc).
- Parameters:
name- must be all ascii alphanumeric, and less than 128 characters in length.
-
-
Method Detail
-
getName
public final String getName()
Returns this codec's name- Specified by:
getNamein interfaceNamedSPILoader.NamedSPI
-
postingsFormat
public abstract PostingsFormat postingsFormat()
Encodes/decodes postings
-
docValuesFormat
public abstract DocValuesFormat docValuesFormat()
Encodes/decodes docvalues
-
storedFieldsFormat
public abstract StoredFieldsFormat storedFieldsFormat()
Encodes/decodes stored fields
-
termVectorsFormat
public abstract TermVectorsFormat termVectorsFormat()
Encodes/decodes term vectors
-
fieldInfosFormat
public abstract FieldInfosFormat fieldInfosFormat()
Encodes/decodes field infos file
-
segmentInfoFormat
public abstract SegmentInfoFormat segmentInfoFormat()
Encodes/decodes segment info file
-
normsFormat
public abstract NormsFormat normsFormat()
Encodes/decodes document normalization values
-
liveDocsFormat
public abstract LiveDocsFormat liveDocsFormat()
Encodes/decodes live docs
-
compoundFormat
public abstract CompoundFormat compoundFormat()
Encodes/decodes compound files
-
pointsFormat
public abstract PointsFormat pointsFormat()
Encodes/decodes points index
-
knnVectorsFormat
public abstract KnnVectorsFormat knnVectorsFormat()
Encodes/decodes numeric vector fields
-
availableCodecs
public static Set<String> availableCodecs()
returns a list of all available codec names
-
reloadCodecs
public static void reloadCodecs(ClassLoader classloader)
Reloads the codec list from the givenClassLoader. Changes to the codecs are visible after the method ends, all iterators (availableCodecs(),...) stay consistent.NOTE: Only new codecs are added, existing ones are never removed or replaced.
This method is expensive and should only be called for discovery of new codecs on the given classpath/classloader!
-
getDefault
public static Codec getDefault()
expert: returns the default codec used for newly createdIndexWriterConfigs.
-
setDefault
public static void setDefault(Codec codec)
expert: sets the default codec used for newly createdIndexWriterConfigs.
-
-