github.com/balzaczyy/golucene@v0.0.0-20151210033525-d0be9ee89713/core/codec/lucene410/codec.go (about) 1 package lucene410 2 3 import ( 4 "github.com/balzaczyy/golucene/core/codec/lucene40" 5 "github.com/balzaczyy/golucene/core/codec/lucene41" 6 "github.com/balzaczyy/golucene/core/codec/lucene42" 7 "github.com/balzaczyy/golucene/core/codec/lucene46" 8 "github.com/balzaczyy/golucene/core/codec/lucene49" 9 "github.com/balzaczyy/golucene/core/codec/perfield" 10 . "github.com/balzaczyy/golucene/core/codec/spi" 11 ) 12 13 // codec/lucene410/Lucene410Codec.java 14 15 func init() { 16 RegisterCodec(newLucene410Codec()) 17 } 18 19 /* 20 Implements the Lucene 4.10 index format, with configuration per-field 21 postings and docvalues format. 22 23 If you want to reuse functionality of this codec in another codec, 24 extend FilterCodec (or embeds the Codec in Go style). 25 */ 26 type Lucene410Codec struct { 27 *CodecImpl 28 } 29 30 func newLucene410Codec() *Lucene410Codec { 31 return &Lucene410Codec{NewCodec("Lucene410", 32 lucene41.NewLucene41StoredFieldsFormat(), 33 lucene42.NewLucene42TermVectorsFormat(), 34 lucene46.NewLucene46FieldInfosFormat(), 35 lucene46.NewLucene46SegmentInfoFormat(), 36 new(lucene40.Lucene40LiveDocsFormat), 37 perfield.NewPerFieldPostingsFormat(func(field string) PostingsFormat { 38 return LoadPostingsFormat("Lucene41") 39 }), 40 perfield.NewPerFieldDocValuesFormat(func(field string) DocValuesFormat { 41 panic("not implemented yet") 42 }), 43 new(lucene49.Lucene49NormsFormat), 44 )} 45 }