Révision 3749
TXM/trunk/bundles/org.txm.tigersearch.rcp/src/org/txm/function/tigersearch/TIGERSearch.java (revision 3749) | ||
---|---|---|
8 | 8 |
import org.apache.commons.lang.StringUtils; |
9 | 9 |
import org.txm.concordance.core.preferences.ConcordancePreferences; |
10 | 10 |
import org.txm.core.results.TXMParameters; |
11 |
import org.txm.searchengine.core.SearchEngine; |
|
12 |
import org.txm.searchengine.core.SearchEnginesManager; |
|
11 | 13 |
import org.txm.searchengine.core.Selection; |
12 | 14 |
import org.txm.searchengine.cqp.CQPSearchEngine; |
13 | 15 |
import org.txm.searchengine.cqp.corpus.CQPCorpus; |
... | ... | |
50 | 52 |
super(parentNodePath, corpus); |
51 | 53 |
|
52 | 54 |
this.corpus = getParent(); |
53 |
|
|
54 |
String id = corpus.getMainCorpus().getID(); |
|
55 |
|
|
56 |
File tsRegistryDirectory = new File(corpus.getProjectDirectory(), "tiger"); //$NON-NLS-1$ |
|
57 |
File configfile = new File(tsRegistryDirectory, "tigersearch.logprop"); //$NON-NLS-1$ |
|
58 |
File tscorpusdir = new File(tsRegistryDirectory, id); |
|
59 |
|
|
60 |
if (!tscorpusdir.exists()) { |
|
61 |
Log.severe(Messages.bind(Messages.ErrorCantFindCorpusDirectoryP0, tscorpusdir)); |
|
62 |
return; |
|
63 |
} |
|
64 |
|
|
65 |
TSCorpusManager manager = new TSCorpusManager(tsRegistryDirectory, configfile); |
|
66 |
if (manager.isInitialized()) { |
|
67 |
|
|
68 |
tscorpus = manager.getCorpus(id); |
|
69 |
if (tscorpus == null) { |
|
70 |
Log.severe(Messages.bind(Messages.TIGERSearchCorpusNotFoundInP0, tsRegistryDirectory)); |
|
71 |
ready = false; |
|
72 |
|
|
73 |
return; |
|
74 |
} |
|
75 |
|
|
76 |
ready = true; |
|
77 |
} |
|
78 | 55 |
} |
79 | 56 |
|
80 | 57 |
public TIGERSearch(String parentNodePath) { |
... | ... | |
147 | 124 |
} |
148 | 125 |
|
149 | 126 |
public boolean isReady() { |
150 |
return ready;
|
|
127 |
return SearchEnginesManager.getTIGERSearchEngine().hasIndexes(this.getParent().getMainCorpus());
|
|
151 | 128 |
} |
152 | 129 |
|
153 | 130 |
public int getNMatchingSentences() { |
... | ... | |
224 | 201 |
} |
225 | 202 |
return true; |
226 | 203 |
} |
227 |
|
|
204 |
|
|
228 | 205 |
@Override |
229 |
public boolean saveParameters() throws Exception { |
|
230 |
return true; |
|
231 |
} |
|
232 |
|
|
233 |
@Override |
|
234 |
public boolean loadParameters() throws Exception { |
|
206 |
public boolean _loadParameters() throws Exception { |
|
235 | 207 |
|
236 |
super.loadParameters(); |
|
237 |
|
|
238 |
this.pQuery = new TIGERQuery(this.getStringParameterValue(ConcordancePreferences.QUERY)); |
|
239 |
|
|
240 | 208 |
return true; |
241 | 209 |
} |
242 | 210 |
|
... | ... | |
245 | 213 |
|
246 | 214 |
//if (hasParameterChanged(TreeSearchPreferences.QUERY)) { |
247 | 215 |
|
248 |
if (tscorpus == null) return false; |
|
216 |
String id = corpus.getMainCorpus().getID(); |
|
217 |
|
|
218 |
File tsRegistryDirectory = new File(corpus.getProjectDirectory(), "tiger"); //$NON-NLS-1$ |
|
219 |
File configfile = new File(tsRegistryDirectory, "tigersearch.logprop"); //$NON-NLS-1$ |
|
220 |
File tscorpusdir = new File(tsRegistryDirectory, id); |
|
221 |
|
|
222 |
if (!tscorpusdir.exists()) { |
|
223 |
Log.severe(Messages.bind(Messages.ErrorCantFindCorpusDirectoryP0, tscorpusdir)); |
|
224 |
return false; |
|
225 |
} |
|
226 |
if (manager == null) { |
|
227 |
manager = new TSCorpusManager(tsRegistryDirectory, configfile); |
|
228 |
tscorpus = manager.getCorpus(id); |
|
229 |
} |
|
230 |
|
|
231 |
if (!manager.isInitialized()) { |
|
232 |
return false; |
|
233 |
} |
|
249 | 234 |
|
235 |
if (tscorpus == null) { |
|
236 |
Log.severe(Messages.bind(Messages.TIGERSearchCorpusNotFoundInP0, tsRegistryDirectory)); |
|
237 |
return false; |
|
238 |
|
|
239 |
} |
|
240 |
|
|
241 |
|
|
250 | 242 |
tsresult = null; |
251 | 243 |
tigerSelection = null; |
252 | 244 |
|
Formats disponibles : Unified diff