Subversion Repositories eFlore/Applications.cel

Rev

Rev 61 | Blame | Last modification | View Log | RSS feed

package org.tela_botanica.client.modeles;

import org.tela_botanica.client.image.ImageModele;
import org.tela_botanica.client.interfaces.Rafraichissable;

import com.google.gwt.http.client.Request;
import com.google.gwt.http.client.RequestBuilder;
import com.google.gwt.http.client.RequestCallback;
import com.google.gwt.http.client.RequestException;
import com.google.gwt.http.client.Response;
import com.google.gwt.user.client.Window;

public class LienImageAsynchroneDAO {

        private ImageModele iModele = null ;
        
        public LienImageAsynchroneDAO(ImageModele im) {
                iModele = im;
        }

        /**
         * Setteur pour le modèle
         * 
         * @param im
         *            le modèle à associer
         */
        public void setIModele(ImageModele im) {
                iModele = im;
        }
        
        public void obtenirLiaisonsImagesObservations(Rafraichissable r,String id)
        {
                String paramGet = "&coi_ce_image="+id ;

                // et on envoie ça au serveur
                RequestBuilder rb = new RequestBuilder(RequestBuilder.GET, iModele
                                .getConfig().getServiceBaseUrl()
                                + "/inventoryImageLink/" + iModele.getIdentifiant() + "/" + paramGet);
                        try {
                                rb.sendRequest(null, new RequestCallback() {
        
                                        public void onError(Request request, Throwable exception) {
                                                // TODO Auto-generated method stub
        
                                        }
        
                                        public void onResponseReceived(Request request,
                                                        Response response) {
        
                                                Window.alert(response.toString()) ;
        
                                        }
                                });
        
                        } catch (RequestException e) {
                                // TODO Auto-generated catch block
                                e.printStackTrace();
                        }
        }
        
        public void lierImageBaseDeDonnees(String idsImages, String idsObs) {
                
                String postData = "";
                
                postData += "&coi_ce_image="+idsImages ;
                postData += "&coi_ce_observation="+idsObs ;
                postData += "&identifiant="+iModele.getIdentifiant() ;

                // et on envoie ça au serveur
                RequestBuilder rb = new RequestBuilder(RequestBuilder.POST, iModele
                                .getConfig().getServiceBaseUrl()
                                + "/inventoryImageLink/");
                
                if(Window.confirm("Lier les images "+idsImages+" aux observations "+idsObs+" ?"))
                {
                        try {
                                rb.sendRequest(postData, new RequestCallback() {
        
                                        public void onError(Request request, Throwable exception) {
                                                // TODO Auto-generated method stub
        
                                        }
        
                                        public void onResponseReceived(Request request,
                                                        Response response) {
        
                                                // quand la requête est éxecutée on le signale au modèle
                                                // poru qu'il mette à jour les données
                                                // et en notifie le médiateur
                                        //      iModele.requeteTerminee();
        
                                        }
                                });
        
                        } catch (RequestException e) {
                                // TODO Auto-generated catch block
                                e.printStackTrace();
                        }
                }
        }
}