Subversion Repositories eFlore/Applications.coel

Rev

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

Rev 155 Rev 156
Line 11... Line 11...
11
import com.google.gwt.http.client.RequestCallback;
11
import com.google.gwt.http.client.RequestCallback;
12
import com.google.gwt.http.client.RequestException;
12
import com.google.gwt.http.client.RequestException;
13
import com.google.gwt.http.client.Response;
13
import com.google.gwt.http.client.Response;
14
import com.google.gwt.http.client.URL;
14
import com.google.gwt.http.client.URL;
15
import com.google.gwt.json.client.JSONArray;
15
import com.google.gwt.json.client.JSONArray;
-
 
16
import com.google.gwt.json.client.JSONObject;
16
import com.google.gwt.json.client.JSONParser;
17
import com.google.gwt.json.client.JSONParser;
17
import com.google.gwt.json.client.JSONValue;
18
import com.google.gwt.json.client.JSONValue;
Line 18... Line 19...
18
 
19
 
Line -... Line 20...
-
 
20
public class StructureAsyncDao {
-
 
21
 
-
 
22
	public void selectionner(final Rafraichissable r, String idUtilisateur, final String idStr) {
-
 
23
		// Ajout des paramètres et données à selectionner dans l'URL
-
 
24
		final String url = ((Configuration) Registry.get(RegistreId.CONFIG)).getServiceBaseUrl() + 
-
 
25
			"CoelStructureListe/" +
-
 
26
			(idStr == null ? "" : idStr) +
-
 
27
			"";
-
 
28
		
-
 
29
		RequestBuilder rb = new RequestBuilder(RequestBuilder.GET, url);
-
 
30
		try {
-
 
31
			rb.sendRequest(null, new RequestCallback() {
-
 
32
 
-
 
33
				public void onError(Request request, Throwable exception) {
-
 
34
					// Gestion des exceptions déclenchées par l'exécution de la requête 
-
 
35
					GWT.log("Erreur à l'exécution du service CoelStructureListe (selection)", exception);
-
 
36
					Info.display("Erreur de Requête", "Une erreur s'est produite lors de l'exécution de la requête.");
-
 
37
				}
-
 
38
				
-
 
39
				public void onErrorHTTP(Request request, Response reponse) {
-
 
40
					// Gestion des erreurs HTTP renvoyé par Apache ou JRest
-
 
41
					Information info = new Information("erreur_jrest", JSONParser.parse(reponse.getText()).isArray());
-
 
42
					GWT.log("Erreur JREST - Code "+reponse.getStatusCode()+"\n"+info.getMessages().toString(), null);
-
 
43
					Info.display("Erreur JREST - Code "+reponse.getStatusCode(), info.toString());
-
 
44
				}
-
 
45
				
-
 
46
				public void onResponseReceived(Request request, Response response) {
-
 
47
					// Si le code de réponse HTTP ne vaut pas 200 OK, on lance le mécanise d'erreur HTTP
-
 
48
					if (response.getStatusCode() != 200) {
-
 
49
						onErrorHTTP(request, response);
-
 
50
					} else {
-
 
51
						if (response.getText().length() != 0 && response.getText() != null) {
-
 
52
							final JSONValue responseValue = JSONParser.parse(response.getText());
-
 
53
		
-
 
54
							// Si la requête est un succès, reception d'un objet ou d'un tableau
-
 
55
							if (responseValue.isObject() != null) {
-
 
56
								final JSONObject reponse = responseValue.isObject();
-
 
57
								// Transformation du tableau JSON réponse en ListeInstitution
-
 
58
								Structure structure = new Structure(reponse);
-
 
59
								Information info = new Information("selection_structure", structure);
-
 
60
								r.rafraichir(info);
-
 
61
							} else if (responseValue.isArray() != null) {
-
 
62
								final JSONArray reponse = responseValue.isArray();
-
 
63
								// Transformation du tableau JSON réponse en ListeInstitution
-
 
64
								StructureListe structures = new StructureListe(reponse);
-
 
65
								// et on met à jour le demandeur des données
-
 
66
								r.rafraichir(structures);
-
 
67
							} else {
-
 
68
								GWT.log(url+"\n\tLa réponse n'est pas un objet ou un talbeau JSON et vaut : "+responseValue.toString(), null);
-
 
69
							}
-
 
70
						} else {
-
 
71
							if (idStr == null) {
-
 
72
								// Dans le cas, où nous demandons toutes les institutions et qu'il n'y en a pas, nous retournons un objet vide
-
 
73
								StructureListe structures = new StructureListe(0);
-
 
74
								r.rafraichir(structures);								
-
 
75
							} else {
-
 
76
								GWT.log(url, null);
-
 
77
								if (response.getText().length() == 0) {
-
 
78
									GWT.log("\tLa réponse a une taille de 0", null);
-
 
79
								}
-
 
80
								if (response.getText() == null) {
-
 
81
									GWT.log("\tLa réponse vaul null", null);
-
 
82
								}
-
 
83
							}
-
 
84
						}
-
 
85
					}
-
 
86
				}
-
 
87
			});
-
 
88
		} catch (RequestException e) {
-
 
89
			e.printStackTrace();
-
 
90
		}
19
public class StructureAsyncDao {
91
	}
20
 
92
	
21
	public void ajouter(final Rafraichissable r, String utilisateurId, final Structure str) {
93
	public void ajouter(final Rafraichissable r, String utilisateurId, final Structure str) {
Line 22... Line 94...
22
		final String url = ((Configuration) Registry.get(RegistreId.CONFIG)).getServiceBaseUrl() + 
94
		final String url = ((Configuration) Registry.get(RegistreId.CONFIG)).getServiceBaseUrl() + 
Line 50... Line 122...
50
		try {
122
		try {
51
			rb.sendRequest(postDonnees, new RequestCallback() {
123
			rb.sendRequest(postDonnees, new RequestCallback() {
Line 52... Line 124...
52
 
124
 
53
				public void onError(Request request, Throwable exception) {
125
				public void onError(Request request, Throwable exception) {
54
					// Gestion des exceptions déclenchées par l'exécution de la requête 
126
					// Gestion des exceptions déclenchées par l'exécution de la requête 
55
					GWT.log("Erreur à l'exécution du service CoelStructureListe", exception);
127
					GWT.log("Erreur à l'exécution du service CoelStructureListe (ajout)", exception);
56
					Info.display("Erreur de Requête", "Une erreur s'est produite lors de l'exécution de la requête.");
128
					Info.display("Erreur de Requête", "Une erreur s'est produite lors de l'exécution de la requête.");
Line 57... Line 129...
57
				}
129
				}
58
				
130
				
Line 112... Line 184...
112
		
184
		
113
		try {
185
		try {
Line 114... Line 186...
114
			rb.sendRequest(postDonnees, new RequestCallback() {
186
			rb.sendRequest(postDonnees, new RequestCallback() {
115
 
187
 
116
				public void onError(Request request, Throwable exception) {
-
 
-
 
188
				public void onError(Request request, Throwable exception) {
-
 
189
					// Gestion des exceptions déclenchées par l'exécution de la requête 
117
					// TODO Auto-generated method stub
190
					GWT.log("Erreur à l'exécution du service CoelStructureListe (suppression)", exception);
Line 118... Line 191...
118
					
191
					Info.display("Erreur de Requête", "Une erreur s'est produite lors de l'exécution de la requête.");
119
				}
192
				}
120
 
193
 
Line 131... Line 204...
131
						onErrorHTTP(request, response);
204
						onErrorHTTP(request, response);
132
					} else {
205
					} else {
133
						if (response.getText().length() != 0 && response.getText() != null) {
206
						if (response.getText().length() != 0 && response.getText() != null) {
134
							final JSONValue responseValue = JSONParser.parse(response.getText());
207
							final JSONValue responseValue = JSONParser.parse(response.getText());
Line 135... Line 208...
135
							
208
							
136
							// Si la requête est un succès, reception d'un tableau
209
							// Si la requête est un succès, reception d'une chaine
137
							if (responseValue.isString() != null) {
210
							if (responseValue.isString() != null) {
138
								Information info = new Information("suppression_structure", responseValue.isString().stringValue());
211
								Information info = new Information("suppression_structure", responseValue.isString().stringValue());
139
								r.rafraichir(info);
212
								r.rafraichir(info);
140
							} else {
213
							} else {