comparison src/luan/modules/lucene/Lucene.luan @ 1392:002152af497a

hosted postgres
author Franklin Schmidt <fschmidt@gmail.com>
date Fri, 06 Sep 2019 00:19:47 -0600
parents 94f48cc76de8
children 9dfff82dfc59
comparison
equal deleted inserted replaced
1391:94f48cc76de8 1392:002152af497a
33 double = NumberFieldParser.DOUBLE 33 double = NumberFieldParser.DOUBLE
34 } 34 }
35 35
36 Lucene.literal = SaneQueryParser.literal 36 Lucene.literal = SaneQueryParser.literal
37 37
38 function Lucene.index(index_dir,default_type,default_fields,completer) 38 function Lucene.index(index_dir,default_type,default_fields,postgres_spec)
39 type(index_dir)=="table" or error "index_dir must be table" 39 type(index_dir)=="table" or error "index_dir must be table"
40 index_dir.to_uri_string and matches(index_dir.to_uri_string(),"^file:") or error "must be file" 40 index_dir.to_uri_string and matches(index_dir.to_uri_string(),"^file:") or error "must be file"
41 postgres_spec==nil or type(postgres_spec)=="table" or error "postgres_spec must be table"
41 local index = {} 42 local index = {}
42 index.dir = index_dir 43 index.dir = index_dir
43 local java_index, closer = LuceneIndex.getLuceneIndex(index_dir.java.file,default_type,default_fields,completer) 44 local java_index, closer = LuceneIndex.getLuceneIndex(index_dir.java.file,default_type,default_fields,postgres_spec)
44 index.java = java_index 45 index.java = java_index
45 index.closer = closer or error() 46 index.closer = closer or error()
46 index.completer = completer 47 index.completer = postgres_spec and postgres_spec.completer
47 48
48 index.indexed_fields = {} 49 index.indexed_fields = {}
49 local mt = {} 50 local mt = {}
50 set_metatable(index.indexed_fields,mt) 51 set_metatable(index.indexed_fields,mt)
51 function mt.__index(_,key) 52 function mt.__index(_,key)