Subversion Repositories eFlore/Archives.cel-v2

Rev

Rev 16 | Rev 19 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
7 aperonnet 1
package org.tela_botanica.client.image;
2
 
16 aperonnet 3
import java.util.Iterator;
4
 
7 aperonnet 5
import org.tela_botanica.client.interfaces.Rafraichissable;
16 aperonnet 6
import org.tela_botanica.client.modeles.ImageCarnet;
12 aperonnet 7
import org.tela_botanica.client.modeles.ImageUploaderAsynchroneDAO;
16 aperonnet 8
import org.tela_botanica.client.modeles.ListeImage;
7 aperonnet 9
import org.tela_botanica.client.modeles.ListeImageAsynchroneDAO;
10
 
12 aperonnet 11
/**
12
 * Modèle d'accès aux données pour les images.
13
 * C'est un singleton
14
 * @author aurelien
15
 *
16
 */
7 aperonnet 17
public class ImageModele {
18
 
12 aperonnet 19
	private static boolean estInstancie = false ;
20
 
7 aperonnet 21
	private ImageMediateur iMediateur = null ;
22
 
16 aperonnet 23
	private ListeImage cacheImage = new ListeImage(0) ;
24
 
12 aperonnet 25
	static ImageModele Instance(ImageMediateur im)
26
	{
27
		if(!estInstancie)
28
		{
29
			return new ImageModele(im);
30
		}
31
		else
32
		{
33
			return null ;
34
		}
35
	}
36
 
37
	private ImageModele(ImageMediateur im) {
7 aperonnet 38
 
39
		iMediateur = im ;
40
	}
41
 
18 aperonnet 42
	public ImageMediateur getIMediateur()
43
	{
44
		return iMediateur ;
45
	}
46
 
7 aperonnet 47
	public void obtenirPhotoGalerie(Rafraichissable r)
48
	{
49
		ListeImageAsynchroneDAO liaDAO = new ListeImageAsynchroneDAO();
50
		liaDAO.ObtenirListeImages(r);
51
	}
12 aperonnet 52
 
53
	public void uploaderImages()
54
	{
18 aperonnet 55
		ImageUploaderAsynchroneDAO IuADaO = new ImageUploaderAsynchroneDAO() ;
56
		IuADaO.setIMediateur(getIMediateur());
57
		IuADaO.choisirMethodeUpload() ;
12 aperonnet 58
	}
16 aperonnet 59
 
60
	public void rafraichirListeImage(Object o)
61
	{
62
		cacheImage = (ListeImage)o ;
63
	}
64
 
65
	public void obtenirMetadonnees(Rafraichissable r, String id)
66
	{
67
 
18 aperonnet 68
		for(Iterator it = cacheImage.keySet().iterator() ; it.hasNext() ;)
16 aperonnet 69
		{
18 aperonnet 70
			ImageCarnet im = (ImageCarnet)cacheImage.get(it.next()) ;
16 aperonnet 71
 
72
			if(im.getOrdre().equals(id))
73
			{
74
 
18 aperonnet 75
				Object meta[] = new Object[3] ;
16 aperonnet 76
				meta[0] = im.getMetadonnesExif() ;
77
				meta[1] = im.getMetadonnesIptc() ;
18 aperonnet 78
				meta[2] = im.getInfoGenerales() ;
16 aperonnet 79
 
80
				r.rafraichir(meta,false) ;
81
			}
82
		}
83
 
84
	}
18 aperonnet 85
 
86
	public void mettreAJourCacheImage(String commentaires, String date, String ids[])
87
	{
88
			for (int i = 0; i < ids.length; i++) {
89
 
90
				String key = ids[i] ;
91
 
92
				ImageCarnet ic = (ImageCarnet)cacheImage.get(key) ;
93
				ic.miseAJourInfoGenerales(commentaires, date) ;
94
			}
95
	}
7 aperonnet 96
 
97
}