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