Subversion Repositories eFlore/Archives.cel-v2

Rev

Rev 16 | Rev 22 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
5 aperonnet 1
package org.tela_botanica.client.modeles;
2
 
18 aperonnet 3
import java.util.Iterator;
4
 
5
import org.tela_botanica.client.image.ImageMediateur;
5 aperonnet 6
import org.tela_botanica.client.interfaces.Rafraichissable;
7
 
8
import com.google.gwt.json.client.JSONArray;
12 aperonnet 9
import com.google.gwt.json.client.JSONObject;
5 aperonnet 10
import com.google.gwt.json.client.JSONParser;
11
import com.google.gwt.json.client.JSONString;
12
import com.google.gwt.json.client.JSONValue;
13
import com.google.gwt.user.client.HTTPRequest;
14
import com.google.gwt.user.client.ResponseTextHandler;
15
import com.gwtext.client.data.ArrayReader;
16
import com.gwtext.client.data.FieldDef;
17
import com.gwtext.client.data.MemoryProxy;
18
import com.gwtext.client.data.RecordDef;
19
import com.gwtext.client.data.Store;
20
import com.gwtext.client.data.StringFieldDef;
21
 
12 aperonnet 22
/**
23
 * Data Object Access communiquant avec le serveur jrest fournissant la liste des images
24
 * répondant à des critères donné
25
 * @author aurelien
26
 *
27
 */
5 aperonnet 28
public class ListeImageAsynchroneDAO {
29
 
18 aperonnet 30
	ImageMediateur iMediateur = null ;
31
 
32
	public void setIMediateur(ImageMediateur im)
33
	{
34
		iMediateur = im ;
35
	}
36
 
5 aperonnet 37
	public void ObtenirListeImages(final Rafraichissable r)
38
	{
12 aperonnet 39
		HTTPRequest.asyncGet("jrest/inventoryImageList/1/ci_publiable_eflore=0", new ResponseTextHandler() {
5 aperonnet 40
			public void onCompletion(String responseText) {
41
 
12 aperonnet 42
				final ListeImage photoData ;
5 aperonnet 43
 
44
				final JSONValue responseValue = JSONParser.parse(responseText);
45
				if (responseValue.isArray() != null) {
46
 
12 aperonnet 47
					final JSONArray reponse = responseValue.isArray();
5 aperonnet 48
 
12 aperonnet 49
					final int taillemax = reponse.size();
50
					photoData = new ListeImage(taillemax);
51
 
52
 
53
					for (int j = 0; j < taillemax ; j++) {
54
 
55
						JSONObject image = (JSONObject)reponse.get(j) ;
56
 
18 aperonnet 57
						ImageCarnet im = new ImageCarnet(image) ;
12 aperonnet 58
 
18 aperonnet 59
						photoData.put(im.getOrdre(),im) ;
60
 
5 aperonnet 61
					}
62
				}
63
				else
64
				{
12 aperonnet 65
					if(responseValue.isObject() != null)
66
					{
67
						photoData = new ListeImage(1);
18 aperonnet 68
						ImageCarnet im = new ImageCarnet(responseValue.isObject()) ;
69
						photoData.put(im.getOrdre(),im) ;
12 aperonnet 70
					}
71
					else
72
					{
73
						photoData = null ;
74
					}
5 aperonnet 75
				}
76
 
16 aperonnet 77
				r.rafraichir(photoData,true);
5 aperonnet 78
			}
79
		});
80
	}
18 aperonnet 81
 
82
	public void SynchroniserBaseDeDonnees(ListeImage li)
83
	{
84
		for(Iterator it = li.keySet().iterator() ; it.hasNext() ;)
85
		{
86
 
87
		//	HTTPRequest.asyncPost("jrest/inventoryImageList/1/", postData, handler)
88
		}
89
	}
90
 
5 aperonnet 91
 
92
}