Subversion Repositories eFlore/Applications.coel

Rev

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

Rev 69 Rev 132
Line 7... Line 7...
7
 
7
 
8
import org.tela_botanica.client.RegistreId;
8
import org.tela_botanica.client.RegistreId;
Line 9... Line 9...
9
import org.tela_botanica.client.interfaces.Rafraichissable;
9
import org.tela_botanica.client.interfaces.Rafraichissable;
-
 
10
 
10
 
11
import com.extjs.gxt.ui.client.Registry;
11
import com.extjs.gxt.ui.client.Registry;
12
import com.google.gwt.core.client.GWT;
12
import com.google.gwt.http.client.Request;
13
import com.google.gwt.http.client.Request;
13
import com.google.gwt.http.client.RequestBuilder;
14
import com.google.gwt.http.client.RequestBuilder;
14
import com.google.gwt.http.client.RequestCallback;
15
import com.google.gwt.http.client.RequestCallback;
15
import com.google.gwt.http.client.RequestException;
16
import com.google.gwt.http.client.RequestException;
16
import com.google.gwt.http.client.Response;
17
import com.google.gwt.http.client.Response;
-
 
18
import com.google.gwt.json.client.JSONArray;
17
import com.google.gwt.json.client.JSONArray;
19
import com.google.gwt.json.client.JSONBoolean;
18
import com.google.gwt.json.client.JSONBoolean;
20
import com.google.gwt.json.client.JSONNull;
19
import com.google.gwt.json.client.JSONParser;
21
import com.google.gwt.json.client.JSONParser;
Line 20... Line 22...
20
import com.google.gwt.json.client.JSONString;
22
import com.google.gwt.json.client.JSONString;
Line 71... Line 73...
71
	/**
73
	/**
72
	 * Méthode déconnectant un utilisateur de l'application. 
74
	 * Méthode déconnectant un utilisateur de l'application. 
73
	 * @param identifiant de l'utilisateur à déconnecter.
75
	 * @param identifiant de l'utilisateur à déconnecter.
74
	 */
76
	 */
75
	public void deconnecterUtilisateur() {
77
	public void deconnecterUtilisateur() {
76
		RequestBuilder rb = new RequestBuilder(RequestBuilder.GET, urlServiceBase+"CoelUtilisateur/"+utilisateur.getLogin()) ;
78
		RequestBuilder rb = new RequestBuilder(RequestBuilder.GET, urlServiceBase+"CoelUtilisateur/"+utilisateur.getId()) ;
77
		try {
79
		try {
78
			rb.sendRequest(null, new RequestCallback() {
80
			rb.sendRequest(null, new RequestCallback() {
Line 79... Line 81...
79
 
81
 
80
				public void onError(Request request, Throwable exception) {
82
				public void onError(Request request, Throwable exception) {
Line 84... Line 86...
84
				public void onResponseReceived(Request request, Response response) {
86
				public void onResponseReceived(Request request, Response response) {
85
					JSONValue jsonValue = JSONParser.parse(response.getText());
87
					JSONValue jsonValue = JSONParser.parse(response.getText());
86
					JSONArray jsonArray;
88
					JSONArray jsonArray;
87
					if ((jsonArray = jsonValue.isArray()) != null) {
89
					if ((jsonArray = jsonValue.isArray()) != null) {
88
						// Identifiant utilisateur ou identifiant de session si non identifié
90
						// Identifiant utilisateur ou identifiant de session si non identifié
89
						String login = ((JSONString) jsonArray.get(0)).stringValue();
91
						String id = ((JSONString) jsonArray.get(0)).stringValue();
90
						// Drapeau levé si l'utilisateur est déjà identifié
92
						// Drapeau levé si l'utilisateur est déjà identifié
91
						boolean identifie = ((JSONBoolean) jsonArray.get(1)).booleanValue();
93
						boolean identifie = ((JSONBoolean) jsonArray.get(1)).booleanValue();
-
 
94
						
-
 
95
						// Nous réinitialisons l'utilisateur
92
						utilisateur.setIdentifie(identifie);
96
						utilisateur = new Utilisateur(id, identifie);
-
 
97
						
93
						utilisateur.setLogin(login);
98
						GWT.log(utilisateur.toString(), null);
94
						rafraichissement.rafraichir(utilisateur);
99
						rafraichissement.rafraichir(utilisateur);
95
					}				
100
					}				
96
				}			
101
				}			
97
			}) ;
102
			}) ;
98
		} catch (RequestException e) {
103
		} catch (RequestException e) {
Line 123... Line 128...
123
 
128
 
124
				public void onResponseReceived(Request request, Response response) {
129
				public void onResponseReceived(Request request, Response response) {
125
					JSONValue jsonValue = JSONParser.parse(response.getText());
130
					JSONValue jsonValue = JSONParser.parse(response.getText());
126
					JSONArray jsonArray;
131
					JSONArray jsonArray;
127
					if ((jsonArray = jsonValue.isArray()) != null) {
132
					if ((jsonArray = jsonValue.isArray()) != null) {
128
						// Identifiant utilisateur ou identifiant de session si non identifié
133
						// Identifiant de l'utilisateur ou identifiant de session si non identifié
-
 
134
						utilisateur.setId(((JSONString) jsonArray.get(0)).stringValue());
129
						String login = ((JSONString) jsonArray.get(0)).stringValue();
135
						
130
						// Drapeau levé si l'utilisateur est déjà identifié
136
						// Drapeau levé si l'utilisateur est déjà identifié
-
 
137
						utilisateur.setIdentifie(((JSONBoolean) jsonArray.get(1)).booleanValue());
-
 
138
						
-
 
139
						// Plus de deux valeurs, l'utilisateur est identifié nous récupérons des données supplémentaires
131
						boolean identifie = ((JSONBoolean) jsonArray.get(1)).booleanValue();
140
						if (jsonArray.size() > 2) {
-
 
141
							// Nom complet de l'utilisateur
-
 
142
							if (jsonArray.get(2).isString() != null) {
-
 
143
								utilisateur.setNomComplet(((JSONString) jsonArray.get(2)).stringValue());
-
 
144
							}
-
 
145
							// Prénom de l'utilisateur
-
 
146
							if (jsonArray.get(3).isString() != null) {
-
 
147
								utilisateur.setPrenom(((JSONString) jsonArray.get(3)).stringValue());
-
 
148
							}
-
 
149
							// Nom de l'utilisateur
-
 
150
							if (jsonArray.get(4).isString() != null) {
-
 
151
								utilisateur.setNom(((JSONString) jsonArray.get(4)).stringValue());
132
						utilisateur.setIdentifie(identifie);
152
							}
-
 
153
							GWT.log(utilisateur.toString(), null);
133
						utilisateur.setLogin(login);
154
						}
134
						rafraichissement.rafraichir(utilisateur);
155
						rafraichissement.rafraichir(utilisateur);
135
					}				
156
					}				
136
				}
157
				}
137
			}) ;
158
			}) ;