Subversion Repositories eFlore/Archives.cel-v2

Rev

Rev 18 | Rev 20 | Go to most recent revision | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

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