comparison lucene/src/luan/modules/lucene/Lucene.luan @ 599:50540f0813e2

support default search fields in lucene; add search to blog;
author Franklin Schmidt <fschmidt@gmail.com>
date Wed, 16 Sep 2015 20:55:49 -0600
parents 790d5de23042
children e54c1646eed0
comparison
equal deleted inserted replaced
598:e930f92d0f61 599:50540f0813e2
1 java() 1 java()
2 local Luan = require "luan:Luan" 2 local Luan = require "luan:Luan"
3 local error = Luan.error 3 local error = Luan.error
4 local LuceneIndex = require "java:luan.modules.lucene.LuceneIndex" 4 local LuceneIndex = require "java:luan.modules.lucene.LuceneIndex"
5 local NumberFieldParser = require "java:sane.lucene.queryparser.NumberFieldParser" 5 local NumberFieldParser = require "java:sane.lucene.queryparser.NumberFieldParser"
6 local StringFieldParser = require "java:sane.lucene.queryparser.StringFieldParser"
6 local SaneQueryParser = require "java:sane.lucene.queryparser.SaneQueryParser" 7 local SaneQueryParser = require "java:sane.lucene.queryparser.SaneQueryParser"
8 local Version = require "java:org.apache.lucene.util.Version"
9 local EnglishAnalyzer = require "java:org.apache.lucene.analysis.en.EnglishAnalyzer"
7 10
8 11
9 local M = {} 12 local M = {}
10 13
11 M.type = { 14 M.type = {
12 string = LuceneIndex.STRING_FIELD_PARSER; 15 string = LuceneIndex.STRING_FIELD_PARSER;
13 integer = NumberFieldParser.INT; 16 integer = NumberFieldParser.INT;
14 long = NumberFieldParser.LONG; 17 long = NumberFieldParser.LONG;
15 double = NumberFieldParser.DOUBLE; 18 double = NumberFieldParser.DOUBLE;
19
20 english = StringFieldParser.new(EnglishAnalyzer.new(Version.LUCENE_CURRENT))
16 } 21 }
17 22
18 M.literal = SaneQueryParser.literal 23 M.literal = SaneQueryParser.literal
19 24
20 function M.index(index_dir) 25 function M.index(index_dir,default_type,default_fields)
21 local index = {} 26 local index = {}
22 index.dir = index_dir 27 index.dir = index_dir
23 local java_index = LuceneIndex.new(index_dir) 28 local java_index = LuceneIndex.new(index_dir,default_type,default_fields)
24 index.indexed_fields = java_index.indexedFieldsMeta.newTable() 29 index.indexed_fields = java_index.indexedFieldsMeta.newTable()
25 index.to_string = java_index.to_string 30 index.to_string = java_index.to_string
26 index.backup = java_index.backup 31 index.backup = java_index.backup
27 index.advanced_search = java_index.advanced_search 32 index.advanced_search = java_index.advanced_search
28 index.search_in_transaction = java_index.search_in_transaction 33 index.search_in_transaction = java_index.search_in_transaction