Mercurial Hosting > luan
comparison lucene/src/luan/modules/lucene/Lucene.luan @ 707:1ed9e55f0be8
replace lucene.backup with lucene.zip implemented in luan, and add lucene.snapshot
author | Franklin Schmidt <fschmidt@gmail.com> |
---|---|
date | Wed, 18 May 2016 15:46:51 -0600 |
parents | ca169567ce07 |
children | 96a280ca32a2 |
comparison
equal
deleted
inserted
replaced
706:30c87c859277 | 707:1ed9e55f0be8 |
---|---|
2 local Luan = require "luan:Luan.luan" | 2 local Luan = require "luan:Luan.luan" |
3 local error = Luan.error | 3 local error = Luan.error |
4 local ipairs = Luan.ipairs or error() | 4 local ipairs = Luan.ipairs or error() |
5 local type = Luan.type or error() | 5 local type = Luan.type or error() |
6 local Html = require "luan:Html.luan" | 6 local Html = require "luan:Html.luan" |
7 local Io = require "luan:Io.luan" | |
8 local String = require "luan:String.luan" | |
9 local matches = String.matches or error() | |
7 local LuceneIndex = require "java:luan.modules.lucene.LuceneIndex" | 10 local LuceneIndex = require "java:luan.modules.lucene.LuceneIndex" |
8 local NumberFieldParser = require "java:sane.lucene.queryparser.NumberFieldParser" | 11 local NumberFieldParser = require "java:sane.lucene.queryparser.NumberFieldParser" |
9 local StringFieldParser = require "java:sane.lucene.queryparser.StringFieldParser" | 12 local StringFieldParser = require "java:sane.lucene.queryparser.StringFieldParser" |
10 local SaneQueryParser = require "java:sane.lucene.queryparser.SaneQueryParser" | 13 local SaneQueryParser = require "java:sane.lucene.queryparser.SaneQueryParser" |
11 local Version = require "java:org.apache.lucene.util.Version" | 14 local Version = require "java:org.apache.lucene.util.Version" |
33 | 36 |
34 -- index.indexed_only_fields[type][field] = fn(doc) | 37 -- index.indexed_only_fields[type][field] = fn(doc) |
35 index.indexed_only_fields = java_index.indexed_only_fields | 38 index.indexed_only_fields = java_index.indexed_only_fields |
36 | 39 |
37 index.to_string = java_index.to_string | 40 index.to_string = java_index.to_string |
38 index.backup = java_index.backup | 41 -- index.backup = java_index.backup |
42 index.snapshot = java_index.snapshot | |
39 index.advanced_search = java_index.advanced_search | 43 index.advanced_search = java_index.advanced_search |
40 index.search_in_transaction = java_index.search_in_transaction | 44 index.search_in_transaction = java_index.search_in_transaction |
41 index.delete_all = java_index.delete_all | 45 index.delete_all = java_index.delete_all |
42 index.delete = java_index.delete | 46 index.delete = java_index.delete |
43 index.save = java_index.save | 47 index.save = java_index.save |
85 end | 89 end |
86 return Html.to_string(result) | 90 return Html.to_string(result) |
87 end | 91 end |
88 end | 92 end |
89 | 93 |
94 function index.zip(zip_file) | |
95 matches(zip_file,[[\.zip$]]) or error("file "..zip_file.." doesn't end with '.zip'") | |
96 index.snapshot( function(dir,file_names) | |
97 local t = {} | |
98 for _, file_name in ipairs(file_names) do | |
99 t[file_name] = "file:"..dir.."/"..file_name | |
100 end | |
101 Io.zip(zip_file,t) | |
102 end ) | |
103 end | |
104 | |
90 return index | 105 return index |
91 end | 106 end |
92 | 107 |
93 return M | 108 return M |