Splits bleve.Index and database in two

This commit is contained in:
2016-01-21 19:19:04 +01:00
parent b044fa17ab
commit ef458eaaea
7 changed files with 132 additions and 235 deletions

63
album_mapping.go Normal file
View File

@@ -0,0 +1,63 @@
package main
import (
"github.com/blevesearch/bleve"
"github.com/blevesearch/bleve/analysis/analyzers/keyword_analyzer"
"github.com/blevesearch/bleve/analysis/analyzers/simple_analyzer"
"github.com/blevesearch/bleve/analysis/language/fr"
)
func buildAlbumMapping() *bleve.IndexMapping {
simpleMapping := bleve.NewTextFieldMapping()
simpleMapping.Analyzer = simple_analyzer.Name
frenchTextMapping := bleve.NewTextFieldMapping()
frenchTextMapping.Analyzer = fr.AnalyzerName
keywordFieldMapping := bleve.NewTextFieldMapping()
keywordFieldMapping.Analyzer = keyword_analyzer.Name
keywordFieldMapping.IncludeInAll = false
numericDisabled := bleve.NewNumericFieldMapping()
numericDisabled.Index = false
numericDisabled.Store = false
numericDisabled.IncludeInAll = false
textDisabled := bleve.NewTextFieldMapping()
textDisabled.Index = false
textDisabled.Store = false
textDisabled.IncludeInAll = false
dateDisabled := bleve.NewDateTimeFieldMapping()
dateDisabled.Index = false
dateDisabled.Store = false
dateDisabled.IncludeInAll = false
albumMapping := bleve.NewDocumentStaticMapping()
albumMapping.AddFieldMappingsAt("ID", numericDisabled)
albumMapping.AddFieldMappingsAt("ISBN", keywordFieldMapping)
albumMapping.AddFieldMappingsAt("Series", frenchTextMapping)
albumMapping.AddFieldMappingsAt("Title", frenchTextMapping)
albumMapping.AddFieldMappingsAt("Num", numericDisabled)
albumMapping.AddFieldMappingsAt("NumA", textDisabled)
albumMapping.AddFieldMappingsAt("State", numericDisabled)
albumMapping.AddFieldMappingsAt("Editor", simpleMapping)
albumMapping.AddFieldMappingsAt("Collection", frenchTextMapping)
albumMapping.AddFieldMappingsAt("SatID", keywordFieldMapping)
albumMapping.AddFieldMappingsAt("Description", frenchTextMapping)
albumMapping.AddFieldMappingsAt("LegalDeposit", dateDisabled)
albumMapping.AddFieldMappingsAt("PrintDate", dateDisabled)
albumMapping.AddFieldMappingsAt("PurchaseDate", dateDisabled)
albumMapping.AddFieldMappingsAt("CoverURL", dateDisabled)
albumMapping.AddFieldMappingsAt("Note", bleve.NewNumericFieldMapping())
albumMapping.AddFieldMappingsAt("Scenarists", simpleMapping)
albumMapping.AddFieldMappingsAt("Designers", simpleMapping)
albumMapping.AddFieldMappingsAt("Colorists", simpleMapping)
albumMapping.AddFieldMappingsAt("Colorists", textDisabled)
albumMapping.AddFieldMappingsAt("FetchDate", dateDisabled)
indexMapping := bleve.NewIndexMapping()
indexMapping.AddDocumentMapping("album", albumMapping)
return indexMapping
}