Révision 2511

tmp/org.txm.properties.core/src/org/txm/properties/core/functions/CorpusPropertiesComputer.java (revision 2511)
25 25
import org.txm.searchengine.cqp.corpus.StructuralUnit;
26 26
import org.txm.searchengine.cqp.corpus.StructuralUnitProperty;
27 27
import org.txm.searchengine.cqp.corpus.WordProperty;
28
import org.txm.searchengine.cqp.corpus.query.Match;
28 29
import org.txm.utils.logger.Log;
29 30

  
30 31
public class CorpusPropertiesComputer extends PropertiesComputer<CQPCorpus> {
......
140 141
		propertiesValues.clear();
141 142
		
142 143
		AbstractCqiClient cqiClient = CorpusManager.getCorpusManager().getCqiClient();
144
		
145
		int s = Math.min(props.pMaxPropertiesToDisplay, numberOfWords);
146
		int[] positions = new int[s];
147
		int n = 0;
148
		List<Match> matches = result.getMatches();
149
		for (Match m : matches) {
150
			if (n >= s) break;
151
			for (int i = m.getStart(); i < m.getEnd(); i++) {
152
				if (n >= s) break;
153
				positions[n++] = i;
154
			}
155
		}
156
		
143 157
		for (Property p : properties) {
144 158
			// int size;
145 159
			try {
146
				// size =
147
				// CorpusManager.getCorpusManager().getCqiClient().lexiconSize(p.getQualifiedName());
148
				// propertiesCounts.put(p.getName(), size);
149
				// List<String> list =
150
				// Arrays.asList(corpus.getLexicon(p).getForms(this.maxvalue));
151
				
152
				int[] positions = new int[Math.min(props.pMaxPropertiesToDisplay, numberOfWords)];
153
				for (int i = 0; i < Math.min(props.pMaxPropertiesToDisplay, numberOfWords); i++) {
154
					positions[i] = i;
155
				}
156
				
157
				// ArrayList<String> values = new ArrayList<String>();
158 160
				LinkedHashSet<String> values = new LinkedHashSet<>(cqiClient.getSingleData(p, positions));
159 161
				propertiesValues.put(p.getName(), new ArrayList<>(values));
160 162
			}

Formats disponibles : Unified diff