Subversion Repositories eFlore/Applications.del

Rev

Rev 425 | Go to most recent revision | Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
386 aurelien 1
package org.tela_botanica.del.client.services;
2
 
3
import com.google.gwt.http.client.Response;
4
import com.google.gwt.json.client.JSONArray;
5
import com.google.gwt.json.client.JSONParser;
6
import com.google.gwt.json.client.JSONValue;
7
 
8
public class UtilitairesAutoCompletionService {
9
 
10
	// Attention à n'utiliser que si eflore est installé
11
	public static String urlServiceCompletionNomEflore = "http://localhost/service:eflore:0.1/bdtfx/noms";
12
	public static String urlServiceCompletionNomLocale = "../jrest/NomsTaxons/";
13
 
14
	public static String effectuerPreTraitementChaineRequeteGenreEspeceSlash(String requete) {
15
		String chaineTraitee = requete;
16
		String[] parties = requete.split(" ", 2);
17
 
18
		if(parties.length == 2) {
19
			if(parties[1].trim().isEmpty()) {
20
				parties[1] = "*";
21
			}
22
			chaineTraitee = parties[0]+"/"+parties[1];
23
		}
24
 
25
		return chaineTraitee;
26
	}
27
 
28
	public static String effectuerPreTraitementChaineRequeteGenreEspeceEflore(String requete) {
29
 
30
		String chaineTraitee = "?recherche=etendue&ns.structure=au&retour.format=oss&masque="+requete;
31
		return chaineTraitee;
32
	}
33
 
34
	public static String[] parserRetourSimple(Response response) {
35
		final JSONValue responseValue = JSONParser.parseStrict(response.getText());
36
		JSONArray noms;
37
		String[] valeurs = new String[0];
38
 
39
		if ((noms=responseValue.isArray()) != null) {
40
 
41
			final int taillemax = noms.size();
42
			valeurs = new String[taillemax];
43
			for (int i = 0; i < taillemax; i++) {
44
				valeurs[i] = (noms.get(i).isArray().get(0).isString().stringValue());
45
			}
46
		}
47
 
48
		return valeurs;
49
	}
50
 
51
	public static String[] parserRetourOss(Response response) {
52
		JSONValue retourJson = JSONParser.parseStrict(response.getText());
53
		JSONArray tableauResultat = retourJson.isArray().get(1).isArray();
54
 
55
		String[] suggestions = new String[tableauResultat.size()];
56
		for (int i = 0; i < tableauResultat.size(); i++) {
57
			suggestions[i] = tableauResultat.get(i).isString().stringValue();
58
		}
59
 
60
		return suggestions;
61
	}
62
}