Subversion Repositories eFlore/Applications.cel

Rev

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

Rev 2 Rev 5
Line 8... Line 8...
8
import com.google.gwt.http.client.RequestCallback;
8
import com.google.gwt.http.client.RequestCallback;
9
import com.google.gwt.http.client.RequestException;
9
import com.google.gwt.http.client.RequestException;
10
import com.google.gwt.http.client.Response;
10
import com.google.gwt.http.client.Response;
Line 11... Line 11...
11
 
11
 
12
/**
12
/**
13
 * DAO d'accès à une image, n'est utilisé que pour l'écriture et pas pour la lecture des images
13
 * DAO d'accès à une image, n'est utilisé que pour l'écriture et pas pour la
-
 
14
 * lecture des images qui se fait par paquet
14
 * qui se fait par paquet 
15
 * 
15
 * @author aurelien
16
 * @author aurelien
16
 *
17
 * 
17
 */
18
 */
Line 18... Line 19...
18
public class ImageAsynchroneDAO {
19
public class ImageAsynchroneDAO {
19
 
20
 
20
	ImageModele iModele = null ;
21
	ImageModele iModele = null;
21
	
-
 
22
	public ImageAsynchroneDAO(ImageModele im)
22
 
23
	{
23
	public ImageAsynchroneDAO(ImageModele im) {
24
		iModele = im ;
24
		iModele = im;
25
	}
25
	}
26
	
-
 
27
	public void setIModele(ImageModele im)
26
 
28
	{
27
	public void setIModele(ImageModele im) {
29
		iModele = im ;
28
		iModele = im;
30
	}
29
	}
31
	
30
 
-
 
31
	/**
-
 
32
	 * Met à jour la base de données avec toutes les données d'une image
32
	/**
33
	 * 
33
	 * Met à jour la base de données avec toutes les données d'une image
34
	 * @param ic
34
	 * @param ic l'image à mettre à jour
35
	 *            l'image à mettre à jour
35
	 */
-
 
36
	public void SynchroniserBaseDeDonnees(final ImageCarnet ic)
36
	 */
37
	{
37
	public void SynchroniserBaseDeDonnees(final ImageCarnet ic) {
38
		String postData = "" ;
38
		String postData = "";
39
		
39
 
40
		// on construit le post avec toutes les valeur de l'image
-
 
41
		for(Iterator<String> imgIt = ic.keySet().iterator();imgIt.hasNext();)
40
		// on construit le post avec toutes les valeur de l'image
42
		{
41
		for (Iterator<String> imgIt = ic.keySet().iterator(); imgIt.hasNext();) {
43
			
42
 
44
			String key = imgIt.next() ;
43
			String key = imgIt.next();
Line 45... Line 44...
45
					String valeur = ic.renvoyerValeurCorrecte(key) ;
44
			String valeur = ic.renvoyerValeurCorrecte(key);
Line 46... Line 45...
46
					postData += "&"+key+"="+valeur ;
45
			postData += "&" + key + "=" + valeur;
47
 
46
 
-
 
47
		}
-
 
48
 
48
		}
49
		// et on envoie une requête asynchrone
49
 
50
		RequestBuilder rb = new RequestBuilder(RequestBuilder.POST, iModele
50
		// et on envoie une requête asynchrone
51
				.getConfig().getServiceBaseUrl()
Line 51... Line 52...
51
		RequestBuilder rb = new RequestBuilder(RequestBuilder.POST, iModele.getConfig().getServiceBaseUrl()+"/inventoryImage/"+iModele.getIdentifiant()+"/") ;
52
				+ "/inventoryImage/" + iModele.getIdentifiant() + "/");
52
		
53
 
53
		try {
54
		try {
54
			rb.sendRequest(postData, new RequestCallback() {
55
			rb.sendRequest(postData, new RequestCallback() {
Line 55... Line 56...
55
 
56
 
-
 
57
				public void onError(Request request, Throwable exception) {
56
				public void onError(Request request, Throwable exception) {
58
					// TODO Auto-generated method stub
57
					// TODO Auto-generated method stub
59
 
58
					
60
				}
59
				}
61
 
-
 
62
				public void onResponseReceived(Request request,
-
 
63
						Response response) {
60
 
64
 
61
				public void onResponseReceived(Request request, Response response) {
-
 
62
					
-
 
63
					if(response.getText().equals("OK")) 
-
 
64
					{
-
 
65
						return ;
65
					if (response.getText().equals("OK")) {
66
					}
66
						return;
67
					else
67
					} else {
68
					{
68
						com.google.gwt.user.client.Window
69
						com.google.gwt.user.client.Window.alert("Problème lors de la mise à jour des données") ;
69
								.alert("Problème lors de la mise à jour des données");
70
					}				
70
					}
71
				}
71
				}
72
				
72
 
73
			}) ;
73
			});
74
			
74
 
75
		} catch (RequestException e) {
75
		} catch (RequestException e) {
76
			// TODO Auto-generated catch block
76
			// TODO Auto-generated catch block
-
 
77
			e.printStackTrace();
-
 
78
		}
77
			e.printStackTrace();
79
	}
78
		}
80
 
79
	}
81
	/**
80
	
-
 
81
	/**
82
	 * Met à jour la base de données avec les mots clés associés à l'image
82
	 * Met à jour la base de données avec les mots clés associés à l'image
83
	 * 
83
	 * @param ic l'image à mettre à jour
84
	 * @param ic
84
	 */
85
	 *            l'image à mettre à jour
85
	public void SynchroniserMotsClesImageBaseDeDonnees(final ImageCarnet ic)
86
	 */
86
	{
87
	public void SynchroniserMotsClesImageBaseDeDonnees(final ImageCarnet ic) {
87
		String postData = "" ;
88
		String postData = "";
88
		
89
 
89
			// on récupère les mots clés de l'image et on fabrique le post
90
		// on récupère les mots clés de l'image et on fabrique le post
-
 
91
		String motsCles = ic.getMotsCles();
-
 
92
		String id = ic.getId();
90
			String motsCles = ic.getMotsCles() ;
93
		postData += "&ci_id_image=" + id + "&ci_meta_mots_cles=" + motsCles;
91
			String id = ic.getId() ;
94
 
92
					postData += "&ci_id_image="+id+"&ci_meta_mots_cles="+motsCles ;
95
		// on envoie une requête asynchrone
93
 
96
		RequestBuilder rb = new RequestBuilder(RequestBuilder.POST, iModele
94
		// on envoie une requête asynchrone			
97
				.getConfig().getServiceBaseUrl()
95
		RequestBuilder rb = new RequestBuilder(RequestBuilder.POST, iModele.getConfig().getServiceBaseUrl()+"/inventoryImage/"+iModele.getIdentifiant()+"/") ;
98
				+ "/inventoryImage/" + iModele.getIdentifiant() + "/");
96
					
99
 
97
				try {
100
		try {
98
					rb.sendRequest(postData, new RequestCallback() {
101
			rb.sendRequest(postData, new RequestCallback() {
99
 
102
 
-
 
103
				public void onError(Request request, Throwable exception) {
100
						public void onError(Request request, Throwable exception) {
104
					// TODO Auto-generated method stub
101
							// TODO Auto-generated method stub
105
 
102
							
-
 
103
						}
106
				}
104
 
-
 
105
						public void onResponseReceived(Request request, Response response) {
107
 
106
							
108
				public void onResponseReceived(Request request,
107
							if(response.getText().equals("OK")) 
109
						Response response) {
108
							{
110
 
109
								return ;
111
					if (response.getText().equals("OK")) {
110
							}
112
						return;
111
							else
113
					} else {
112
							{
114
						com.google.gwt.user.client.Window
113
								com.google.gwt.user.client.Window.alert("Problème lors de la mise à jour des données") ;
115
								.alert("Problème lors de la mise à jour des données");
114
							}				
116
					}
115
						}
117
				}
116
						
118
 
117
					}) ;
119
			});
118
						
120
 
119
				} catch (RequestException e) {
121
		} catch (RequestException e) {
120
					// TODO Auto-generated catch block
122
			// TODO Auto-generated catch block
-
 
123
			e.printStackTrace();
-
 
124
		}
121
					e.printStackTrace();
125
	}
122
			}
126
 
123
	}
127
	/**
124
	
-
 
125
	/**
128
	 * Supprime une image de la base de données
-
 
129
	 * 
126
	 * Supprime une image de la base de données
130
	 * @param ic
127
	 * @param ic l'image à supprimer
131
	 *            l'image à supprimer
128
	 */
132
	 */
129
	public void supprimerBaseDeDonnees(final ImageCarnet ic)
133
	public void supprimerBaseDeDonnees(final ImageCarnet ic) {
130
	{
134
		// le post contient l'action delete pour JREST (qui ne gère pas DELETE
-
 
135
		// comme une requête à part entière)
-
 
136
		String postData = "";
-
 
137
		postData += "&action=DELETE";
-
 
138
 
-
 
139
		// on envoie un post avec l'id de l'image à supprimer
131
		// le post contient l'action delete pour JREST (qui ne gère pas DELETE comme une requête à part entière)
140
		RequestBuilder rb = new RequestBuilder(RequestBuilder.POST, iModele
132
		String postData = "" ;
141
				.getConfig().getServiceBaseUrl()
133
		postData += "&action=DELETE" ;
142
				+ "/inventoryImage/"
Line 134... Line 143...
134
		
143
				+ iModele.getIdentifiant()
135
		// on envoie un post avec l'id de l'image à supprimer
144
				+ "/"
136
		RequestBuilder rb = new RequestBuilder(RequestBuilder.POST, iModele.getConfig().getServiceBaseUrl()+"/inventoryImage/"+iModele.getIdentifiant()+"/"+ic.getId()) ;
145
				+ ic.getId());
137
		
146
 
138
		try {
147
		try {
139
			rb.sendRequest(postData, new RequestCallback() {
148
			rb.sendRequest(postData, new RequestCallback() {
-
 
149
 
140
 
150
				public void onError(Request request, Throwable exception) {
141
				public void onError(Request request, Throwable exception) {
151
					// TODO Auto-generated method stub
142
					// TODO Auto-generated method stub
152
 
143
					
153
				}
-
 
154
 
-
 
155
				public void onResponseReceived(Request request,
144
				}
156
						Response response) {
145
				
-
 
146
				public void onResponseReceived(Request request, Response response) {
-
 
147
					
-
 
148
					if(response.getText().equals("OK")) 
-
 
149
					{
157
 
150
						return ;
158
					if (response.getText().equals("OK")) {
151
					}
159
						return;
152
					else
160
					} else {
153
					{
161
						com.google.gwt.user.client.Window
154
						com.google.gwt.user.client.Window.alert("Problème lors de la mise à jour des données") ;
162
								.alert("Problème lors de la mise à jour des données");
155
					}				
163
					}
156
				}
164
				}
157
				
165