Rev 16 | Rev 19 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed
package org.tela_botanica.client.image;
import java.util.Iterator;
import org.tela_botanica.client.interfaces.Rafraichissable;
import org.tela_botanica.client.modeles.ImageCarnet;
import org.tela_botanica.client.modeles.ImageUploaderAsynchroneDAO;
import org.tela_botanica.client.modeles.ListeImage;
import org.tela_botanica.client.modeles.ListeImageAsynchroneDAO;
/**
* Modèle d'accès aux données pour les images.
* C'est un singleton
* @author aurelien
*
*/
public class ImageModele {
private static boolean estInstancie = false ;
private ImageMediateur iMediateur = null ;
private ListeImage cacheImage = new ListeImage(0) ;
static ImageModele Instance(ImageMediateur im)
{
if(!estInstancie)
{
return new ImageModele(im);
}
else
{
return null ;
}
}
private ImageModele(ImageMediateur im) {
iMediateur = im ;
}
public ImageMediateur getIMediateur()
{
return iMediateur ;
}
public void obtenirPhotoGalerie(Rafraichissable r)
{
ListeImageAsynchroneDAO liaDAO = new ListeImageAsynchroneDAO();
liaDAO.ObtenirListeImages(r);
}
public void uploaderImages()
{
ImageUploaderAsynchroneDAO IuADaO = new ImageUploaderAsynchroneDAO() ;
IuADaO.setIMediateur(getIMediateur());
IuADaO.choisirMethodeUpload() ;
}
public void rafraichirListeImage(Object o)
{
cacheImage = (ListeImage)o ;
}
public void obtenirMetadonnees(Rafraichissable r, String id)
{
for(Iterator it = cacheImage.keySet().iterator() ; it.hasNext() ;)
{
ImageCarnet im = (ImageCarnet)cacheImage.get(it.next()) ;
if(im.getOrdre().equals(id))
{
Object meta[] = new Object[3] ;
meta[0] = im.getMetadonnesExif() ;
meta[1] = im.getMetadonnesIptc() ;
meta[2] = im.getInfoGenerales() ;
r.rafraichir(meta,false) ;
}
}
}
public void mettreAJourCacheImage(String commentaires, String date, String ids[])
{
for (int i = 0; i < ids.length; i++) {
String key = ids[i] ;
ImageCarnet ic = (ImageCarnet)cacheImage.get(key) ;
ic.miseAJourInfoGenerales(commentaires, date) ;
}
}
}