Subversion Repositories eFlore/Archives.cel-v2

Rev

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

Rev 11 Rev 43
1
package org.tela_botanica.client;
1
package org.tela_botanica.client;
2
 
2
 
3
import org.tela_botanica.client.image.ImageMediateur;
3
import org.tela_botanica.client.image.ImageMediateur;
4
import org.tela_botanica.client.interfaces.iMediateur;
4
import org.tela_botanica.client.interfaces.iMediateur;
5
import org.tela_botanica.client.interfaces.iRetourUtilisateur;
5
import org.tela_botanica.client.interfaces.iRetourUtilisateur;
6
import org.tela_botanica.client.modeles.Utilisateur;
6
import org.tela_botanica.client.modeles.Utilisateur;
7
import org.tela_botanica.client.observation.ObservationMediateur;
7
import org.tela_botanica.client.observation.ObservationMediateur;
8
 
8
 
9
 
9
 
10
public class CarnetEnLigneMediateur  {
10
public class CarnetEnLigneMediateur  {
11
	
11
	
12
	// Evenenements
12
	// Evenenements
13
	final static public  int ETAT_CONNEXION=1;
13
	final static public  int ETAT_CONNEXION=1;
14
	final static public  int DECONNEXION=2;
14
	final static public  int DECONNEXION=2;
15
	final static public  int CONNEXION = 3;
15
	final static public  int CONNEXION = 3;
16
	
16
	
17
	
17
	
18
	private final CarnetEnLigneModele carnetEnLigneModele;
18
	private final CarnetEnLigneModele carnetEnLigneModele;
19
	private Utilisateur utilisateur=null; 
19
	private Utilisateur utilisateur=null; 
20
	
20
	
21
	// Fonctionnement servicecs
21
	// Fonctionnement servicecs
22
	private boolean async=true;
22
	private boolean async=true;
23
 
23
 
24
	
24
	
25
	
25
	
26
	public CarnetEnLigneMediateur() {
26
	public CarnetEnLigneMediateur() {
27
		
27
		
28
		carnetEnLigneModele=new CarnetEnLigneModele();
28
		carnetEnLigneModele=new CarnetEnLigneModele();
29
		//addListener(ETAT_CONNEXION,this);
29
		//addListener(ETAT_CONNEXION,this);
30
		getEtatUtilisateur(); // Alimente Objet Utilisateur 
30
		getEtatUtilisateur(); // Alimente Objet Utilisateur 
31
		
31
		
32
	}
32
	}
33
	
33
	
34
	/**
34
	/**
35
	 * Fin construction (est appelle sur reception evenement Applicatif ETAT_CONNEXION)
35
	 * Fin construction (est appelle sur reception evenement Applicatif ETAT_CONNEXION)
36
	 *
36
	 *
37
	 */
37
	 */
38
	
38
	
39
	private void _CarnetEnLigneMediateur() {
39
	private void _CarnetEnLigneMediateur() {
40
		
40
		
41
		ImageMediateur.Instance() ; 
-
 
42
		//new ImageMediateur(this); 
41
		ImageMediateur.Instance() ;  
43
		new ObservationMediateur(this); 
42
		new ObservationMediateur(this); 
44
 
43
 
45
	}
44
	}
46
	
45
	
47
	
46
	
48
	private void getEtatUtilisateur() {  // Pourrait devenir publique ...
47
	private void getEtatUtilisateur() {  // Pourrait devenir publique ...
49
		
48
		
50
// TODO : utiliser une factory ici : Avec Modele synchrone ou non, ou au niveau methode comme dans cette exemple
49
// TODO : utiliser une factory ici : Avec Modele synchrone ou non, ou au niveau methode comme dans cette exemple
51
	
50
	
52
		
51
		
53
// Pas possible de traiter dans Modele car retour asynchrone devant etre traité ici.
52
// Pas possible de traiter dans Modele car retour asynchrone devant etre traité ici.
54
		
53
		
55
		// if asynchrone 
54
		// if asynchrone 
56
		
55
		
57
		if (async) {
56
		if (async) {
58
		carnetEnLigneModele.getUtilisateurAsynchroneDAO(
57
		carnetEnLigneModele.getUtilisateurAsynchroneDAO(
59
				new iRetourUtilisateur() {
58
				new iRetourUtilisateur() {
60
					public void onRetour(Utilisateur uti) {
59
					public void onRetour(Utilisateur uti) {
61
						utilisateur=uti;
60
						utilisateur=uti;
62
					//	fireEvent(ETAT_CONNEXION); 
61
					//	fireEvent(ETAT_CONNEXION); 
63
					}
62
					}
64
 
63
 
65
					
64
					
66
				}
65
				}
67
				
66
				
68
		);
67
		);
69
		
68
		
70
		}
69
		}
71
		// else if synchrone 
70
		// else if synchrone 
72
		else {
71
		else {
73
 
72
 
74
		utilisateur= carnetEnLigneModele.getUtilisateurSynchroneDAO();
73
		utilisateur= carnetEnLigneModele.getUtilisateurSynchroneDAO();
75
		_CarnetEnLigneMediateur();
74
		_CarnetEnLigneMediateur();
76
 
75
 
77
		}
76
		}
78
 
77
 
79
		
78
		
80
 
79
 
81
		
80
		
82
	}
81
	}
83
 
82
 
84
 
83
 
85
	// Evenenements Applicatifs
84
	// Evenenements Applicatifs
86
	/*
85
	/*
87
	public void handleEvent(BaseEvent be) {
86
	public void handleEvent(BaseEvent be) {
88
		if (be.type==CarnetEnLigneMediateur.ETAT_CONNEXION) {
87
		if (be.type==CarnetEnLigneMediateur.ETAT_CONNEXION) {
89
		 _CarnetEnLigneMediateur(); // Fin initialisation 
88
		 _CarnetEnLigneMediateur(); // Fin initialisation 
90
		}
89
		}
91
	}
90
	}
92
	*/
91
	*/
93
	
92
	
94
	// Methode publiques
93
	// Methode publiques
95
	
94
	
96
	/**
95
	/**
97
	 * Recherche Identifiant utilisateur en cours et etat de connection
96
	 * Recherche Identifiant utilisateur en cours et etat de connection
98
	 * @return Utilisateur
97
	 * @return Utilisateur
99
	 */
98
	 */
100
	
99
	
101
	
100
	
102
	public Utilisateur getUtilisateur() {
101
	public Utilisateur getUtilisateur() {
103
		return utilisateur;
102
		return utilisateur;
104
	}
103
	}
105
 
104
 
106
	/**
105
	/**
107
	 * Deconnecte l'utilisateur passe en parametre
106
	 * Deconnecte l'utilisateur passe en parametre
108
	 * @param String uti (utilisateur connecte)
-
 
109
	 */
107
	 */
110
	
-
 
111
	
-
 
112
    public void deconnecterUtilisateur() {
108
    public void deconnecterUtilisateur() {
113
 
109
 
114
			
110
			
115
			carnetEnLigneModele.deconnecterUtilisateur(
111
			carnetEnLigneModele.deconnecterUtilisateur(
116
					new iRetourUtilisateur() {
112
					new iRetourUtilisateur() {
117
						public void onRetour(Utilisateur uti) {
113
						public void onRetour(Utilisateur uti) {
118
							utilisateur=uti;
114
							utilisateur=uti;
119
							//fireEvent(DECONNEXION); 
115
							//fireEvent(DECONNEXION); 
120
						}
116
						}
121
 
117
 
122
						
118
						
123
					}, utilisateur.getIdentifiant()
119
					}, utilisateur.getIdentifiant()
124
					
120
					
125
			);
121
			);
126
 
122
 
127
		
123
		
128
		
124
		
129
	}
125
	}
130
 
126
 
131
	public void connecterUtilisateur(String login, String password) {
127
	public void connecterUtilisateur(String login, String password) {
132
	
128
	
133
		carnetEnLigneModele.connecterUtilisateur(
129
		carnetEnLigneModele.connecterUtilisateur(
134
				new iRetourUtilisateur() {
130
				new iRetourUtilisateur() {
135
					public void onRetour(Utilisateur uti) {
131
					public void onRetour(Utilisateur uti) {
136
						utilisateur=uti;
132
						utilisateur=uti;
137
						//fireEvent(CONNEXION); 
133
						//fireEvent(CONNEXION); 
138
					}
134
					}
139
 
135
 
140
					
136
					
141
				}, login, password 
137
				}, login, password 
142
				
138
				
143
		);
139
		);
144
 
140
 
145
		
141
		
146
	}
142
	}
147
 
143
 
148
 
144
 
149
}
145
}
150
 
146