1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
|
diff -up sword-1.6.2/configure.clucene2 sword-1.6.2/configure
--- sword-1.6.2/configure.clucene2 2010-10-22 23:14:28.000000000 +0200
+++ sword-1.6.2/configure 2011-10-02 21:27:35.420704861 +0200
@@ -16348,9 +16348,9 @@ for flag in $with_clucene; do
if test -z "$clucene_set_failed"; then
if test -e "$flag/include/CLucene.h"; then
# 64-bit checks first
- if test -e "$flag/lib64/libclucene.la" || test -e "$flag/lib64/libclucene.so"; then
+ if test -e "$flag/lib64/libclucene-core.la" || test -e "$flag/lib64/libclucene-core.so"; then
clucene_set_failed=$flag
- CLUCENE_LIBS="-L$flag/lib64 -lclucene"
+ CLUCENE_LIBS="-L$flag/lib64 -lclucene-core"
if test -e "$flag/include/CLucene/clucene-config.h"; then
CLUCENE_CXXFLAGS="-I$flag/include"
else
@@ -16358,9 +16358,9 @@ for flag in $with_clucene; do
fi
else
# 32-bit checks
- if test -e "$flag/lib/libclucene.la" || test -e "$flag/lib/libclucene.so"; then
+ if test -e "$flag/lib/libclucene-core.la" || test -e "$flag/lib/libclucene-core.so"; then
clucene_set_failed=$flag
- CLUCENE_LIBS="-L$flag/lib -lclucene"
+ CLUCENE_LIBS="-L$flag/lib -lclucene-core"
if test -e "$flag/include/CLucene/clucene-config.h"; then
CLUCENE_CXXFLAGS="-I$flag/include"
else
diff -up sword-1.6.2/m4/acx_clucene.m4.clucene2 sword-1.6.2/m4/acx_clucene.m4
--- sword-1.6.2/m4/acx_clucene.m4.clucene2 2007-05-19 23:28:23.000000000 +0200
+++ sword-1.6.2/m4/acx_clucene.m4 2011-10-02 21:27:35.420704861 +0200
@@ -29,9 +29,9 @@ for flag in $with_clucene; do
if test -z "$clucene_set_failed"; then
if test -e "$flag/include/CLucene.h"; then
# 64-bit checks first
- if test -e "$flag/lib64/libclucene.la" || test -e "$flag/lib64/libclucene.so"; then
+ if test -e "$flag/lib64/libclucene-core.la" || test -e "$flag/lib64/libclucene-core.so"; then
clucene_set_failed=$flag
- CLUCENE_LIBS="-L$flag/lib64 -lclucene"
+ CLUCENE_LIBS="-L$flag/lib64 -lclucene-core"
if test -e "$flag/include/CLucene/clucene-config.h"; then
CLUCENE_CXXFLAGS="-I$flag/include"
else
@@ -39,9 +39,9 @@ for flag in $with_clucene; do
fi
else
# 32-bit checks
- if test -e "$flag/lib/libclucene.la" || test -e "$flag/lib/libclucene.so"; then
+ if test -e "$flag/lib/libclucene-core.la" || test -e "$flag/lib/libclucene-core.so"; then
clucene_set_failed=$flag
- CLUCENE_LIBS="-L$flag/lib -lclucene"
+ CLUCENE_LIBS="-L$flag/lib -lclucene-core"
if test -e "$flag/include/CLucene/clucene-config.h"; then
CLUCENE_CXXFLAGS="-I$flag/include"
else
diff -up sword-1.6.2/src/modules/swmodule.cpp.clucene2 sword-1.6.2/src/modules/swmodule.cpp
--- sword-1.6.2/src/modules/swmodule.cpp.clucene2 2011-10-02 21:32:40.825795281 +0200
+++ sword-1.6.2/src/modules/swmodule.cpp 2011-10-02 22:02:42.441506634 +0200
@@ -40,7 +40,7 @@
#ifdef USELUCENE
#include <CLucene.h>
-#include <CLucene/CLBackwards.h>
+//#include <CLucene/CLBackwards.h>
//Lucence includes
//#include "CLucene.h"
@@ -59,6 +59,9 @@ using namespace lucene::search;
using std::vector;
+extern size_t lucene_utf8towcs(wchar_t *, const char *, size_t maxslen);
+extern size_t lucene_wcstoutf8 (char *, const wchar_t *, size_t maxslen);
+
SWORD_NAMESPACE_START
SWDisplay SWModule::rawdisp;
@@ -1144,7 +1147,7 @@ signed char SWModule::createSearchFramew
lucene_utf8towcs(wcharBuffer, keyText, MAX_CONV_SIZE); //keyText must be utf8
// doc->add( *(new Field("key", wcharBuffer, Field::STORE_YES | Field::INDEX_TOKENIZED)));
- doc->add( *Field::Text(_T("key"), wcharBuffer ) );
+ doc->add(*_CLNEW Field(_T("key"), wcharBuffer, Field::STORE_YES | Field::INDEX_TOKENIZED) );
if (includeKeyInSearch) {
@@ -1155,11 +1158,11 @@ signed char SWModule::createSearchFramew
}
lucene_utf8towcs(wcharBuffer, content, MAX_CONV_SIZE); //content must be utf8
- doc->add( *Field::UnStored(_T("content"), wcharBuffer) );
+ doc->add(*_CLNEW Field(_T("content"), wcharBuffer, Field::STORE_NO | Field::INDEX_TOKENIZED));
if (strong.length() > 0) {
lucene_utf8towcs(wcharBuffer, strong, MAX_CONV_SIZE);
- doc->add( *Field::UnStored(_T("lemma"), wcharBuffer) );
+ doc->add(*_CLNEW Field(_T("lemma"), wcharBuffer, Field::STORE_NO | Field::INDEX_TOKENIZED) );
//printf("setting fields (%s).\ncontent: %s\nlemma: %s\n", (const char *)*key, content, strong.c_str());
}
@@ -1280,12 +1283,12 @@ signed char SWModule::createSearchFramew
//printf("proxBuf after (%s).\nprox: %s\nproxLem: %s\n", (const char *)*key, proxBuf.c_str(), proxLem.c_str());
- doc->add( *Field::UnStored(_T("prox"), wcharBuffer) );
+ doc->add(*_CLNEW Field(_T("prox"), wcharBuffer, Field::STORE_NO | Field::INDEX_TOKENIZED) );
good = true;
}
if (proxLem.length() > 0) {
lucene_utf8towcs(wcharBuffer, proxLem, MAX_CONV_SIZE); //keyText must be utf8
- doc->add( *Field::UnStored(_T("proxlem"), wcharBuffer) );
+ doc->add(*_CLNEW Field(_T("proxlem"), wcharBuffer, Field::STORE_NO | Field::INDEX_TOKENIZED) );
good = true;
}
if (good) {
@@ -1315,7 +1318,9 @@ signed char SWModule::createSearchFramew
fsWriter = new IndexWriter(d, an, true);
}
- Directory *dirs[] = { ramDir, 0 };
+ ValueArray<Directory*> dirs(2);
+ dirs[0] = ramDir;
+ dirs[1] = 0;
fsWriter->addIndexes(dirs);
fsWriter->close();
|