Subversion Repositories eFlore/Applications.coel

Rev

Rev 608 | Rev 760 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 608 Rev 748
Line 1... Line 1...
1
package org.tela_botanica.client.modeles;
1
package org.tela_botanica.client.modeles;
Line 2... Line 2...
2
 
2
 
3
import java.io.Serializable;
-
 
4
import java.util.ArrayList;
3
import java.io.Serializable;
5
import java.util.Collection;
-
 
6
import java.util.Collections;
4
import java.util.Collection;
7
import java.util.HashMap;
5
import java.util.HashMap;
8
import java.util.Iterator;
6
import java.util.Iterator;
9
import java.util.LinkedList;
-
 
10
import java.util.List;
7
import java.util.LinkedList;
11
import java.util.Map;
8
import java.util.Map;
12
import java.util.Set;
9
import java.util.Set;
Line 13... Line 10...
13
import java.util.TreeSet;
10
import java.util.TreeSet;
Line 27... Line 24...
27
 
24
 
28
	/**
25
	/**
29
	 * Identifiant pour sérialisé l'objet...
26
	 * Identifiant pour sérialisé l'objet...
30
	 */
27
	 */
31
	private static final long serialVersionUID = 3527760464061629791L;
28
	private static final long serialVersionUID = 3527760464061629791L;
-
 
29
	
-
 
30
	protected abstract String getPrefixe();
32
 
31
	
33
	/**
32
	/**
34
	 * Pour éviter que l'on traite des valeurs nulles à l'affichage on passe par
33
	 * Pour éviter que l'on traite des valeurs nulles à l'affichage on passe par
35
	 * cette fonction qui retire les charactères nuls qui font planter
34
	 * cette fonction qui retire les charactères nuls qui font planter
36
	 * l'affichage, il ne faut pas utiliser get directement
35
	 * l'affichage, il ne faut pas utiliser get directement
Line 178... Line 177...
178
				String[] valeurs = valeurChamp.split(";;");
177
				String[] valeurs = valeurChamp.split(";;");
Line 179... Line 178...
179
			
178
			
180
				if (valeurs.length > 0)	{
179
				if (valeurs.length > 0)	{
181
					if (valeurs[0].contains("##"))	{
180
					if (valeurs[0].contains("##"))	{
182
						// Les champs sont typés, on en fait une Map
181
						// Les champs sont typés, on en fait une Map
183
						HashMap mapValeurs = new HashMap();
182
						HashMap<String,String> mapValeurs = new HashMap<String,String>();
184
						for (int i = 0; i < valeurs.length; i++)	{
183
						for (int i = 0; i < valeurs.length; i++)	{
185
							String typeEtValeur[] = valeurs[i].split("##");
184
							String typeEtValeur[] = valeurs[i].split("##");
186
							mapValeurs.put(typeEtValeur[1], typeEtValeur[0]);						
185
							mapValeurs.put(typeEtValeur[1], typeEtValeur[0]);						
187
						}
186
						}
188
						retourObjet = mapValeurs;
187
						retourObjet = mapValeurs;
189
					}
188
					}
Line 190... Line 189...
190
					else	{
189
					else	{
191
						
190
						
192
						//Les champs ne sont pas typés, on en fait une Liste
191
						//Les champs ne sont pas typés, on en fait une Liste
193
						LinkedList listeValeurs = new LinkedList<String>();
192
						LinkedList<String> listeValeurs = new LinkedList<String>();
194
						for (int i = 0; i < valeurs.length; i++)	{
193
						for (int i = 0; i < valeurs.length; i++)	{
195
							if ((valeurs[i]!=null)&&(!valeurs[i].equals("")))	{
194
							if ((valeurs[i]!=null)&&(!valeurs[i].equals("")))	{
196
								listeValeurs.add(valeurs[i]);
195
								listeValeurs.add(valeurs[i]);
Line 385... Line 384...
385
		
384
		
386
		return nouvelleInstance;
385
		return nouvelleInstance;
Line 387... Line 386...
387
	}
386
	}
388
	
387
	
389
	/**
388
	/**
390
	 * Renvoie une chaine de caractère formatée et encodée pour POST avec toutes les propriétés du modèle
389
	 * Renvoie une chaîne de caractère formatée et encodée pour POST avec toutes les propriétés du modèle
-
 
390
	 * */
Line 391... Line -...
391
	 * */
-
 
392
	public String obtenirChaineJSON() {
-
 
393
		
391
	public String obtenirChainePOST() {
394
		String chaineJSON = "";
392
		String post = "";
395
		
393
		
Line 396... Line 394...
396
		FastMap hmProperties = (FastMap) getProperties();
394
		FastMap<?> proprietees = (FastMap<?>) getProperties();
397
		Collection<String> keys = hmProperties.keySet();
395
		Collection<String> cles = proprietees.keySet();
398
		Iterator<String> it = keys.iterator();
396
		Iterator<String> it = cles.iterator();
399
		
397
		
400
		while (it.hasNext())	{
398
		while (it.hasNext())	{
401
			String key = it.next();
399
			String cle = it.next();
402
			chaineJSON += "cp_" +  key + "=" + hmProperties.get(key);
400
			post += getPrefixe() + "_" +  cle + "=" + proprietees.get(cle);
Line 403... Line 401...
403
			if (it.hasNext())	{
401
			if (it.hasNext())	{
404
				chaineJSON += "&";
402
				post += "&";
405
			}
403
			}
406
		}
404
		}