Line 27... |
Line 27... |
27 |
numeroSequence = 0;
|
27 |
numeroSequence = 0;
|
28 |
}
|
28 |
}
|
Line 29... |
Line 29... |
29 |
|
29 |
|
30 |
// Retourne le numéro du séquenceur
|
30 |
// Retourne le numéro du séquenceur
|
31 |
public int lancerRequeteSynchrone(Rafraichissable vueARafraichir) {
|
31 |
public int lancerRequeteSynchrone(Rafraichissable vueARafraichir) {
|
32 |
if (numeroSequence == 0) {
|
32 |
//if (numeroSequence == 0) {
|
33 |
mediateur.activerChargement("Chargement en cours... Veuillez patienter");
|
33 |
mediateur.activerChargement(this, "Chargement en cours... Veuillez patienter");
|
Line 34... |
Line 34... |
34 |
}
|
34 |
//}
|
35 |
|
35 |
|
36 |
numeroSequence++;
|
36 |
numeroSequence++;
|
37 |
if (Mediateur.DEBUG) System.out.println("==> Sequenceur : Envoi requete n°" + numeroSequence);
|
37 |
if (Mediateur.DEBUG) System.out.println("==> Sequenceur : Envoi requete n°" + numeroSequence);
|
Line 41... |
Line 41... |
41 |
return numeroSequence;
|
41 |
return numeroSequence;
|
42 |
}
|
42 |
}
|
Line 43... |
Line 43... |
43 |
|
43 |
|
44 |
//Offrir la possibilité d'enfiler (=mettre à la fin d'une file d'attente) un rafraichissement dont on a déjà le retour
|
44 |
//Offrir la possibilité d'enfiler (=mettre à la fin d'une file d'attente) un rafraichissement dont on a déjà le retour
|
45 |
public int enfilerRafraichissement(Rafraichissable vueARafraichir, Object nouvellesDonnees) {
|
45 |
public int enfilerRafraichissement(Rafraichissable vueARafraichir, Object nouvellesDonnees) {
|
46 |
if (numeroSequence == 0) {
|
46 |
//if (numeroSequence == 0) {
|
47 |
mediateur.activerChargement("Chargement en cours... Veuillez patienter");
|
47 |
mediateur.activerChargement(this, "Chargement en cours... Veuillez patienter");
|
48 |
}
|
48 |
//}
|
49 |
numeroSequence++;
|
49 |
numeroSequence++;
|
50 |
if (Mediateur.DEBUG) System.out.println("|| Sequenceur : Empiler n°" + numeroSequence);
|
50 |
if (Mediateur.DEBUG) System.out.println("|| Sequenceur : Empiler n°" + numeroSequence);
|
51 |
Requete requete = new Requete(vueARafraichir, numeroSequence);
|
51 |
Requete requete = new Requete(vueARafraichir, numeroSequence);
|
52 |
Reponse reponse = new Reponse(nouvellesDonnees, numeroSequence);
|
52 |
Reponse reponse = new Reponse(nouvellesDonnees, numeroSequence);
|
53 |
requetes.put(numeroSequence, requete);
|
53 |
requetes.put(numeroSequence, requete);
|
54 |
rafraichir(reponse);
|
54 |
rafraichir(reponse);
|
55 |
mediateur.desactiverChargement();
|
55 |
mediateur.desactiverChargement(this);
|
56 |
return numeroSequence;
|
56 |
return numeroSequence;
|
Line 57... |
Line 57... |
57 |
}
|
57 |
}
|
Line 65... |
Line 65... |
65 |
if (reponse.obtenirNumeroSequence() == marqueurRetour) {
|
65 |
if (reponse.obtenirNumeroSequence() == marqueurRetour) {
|
66 |
// Si le numéro de séquence du retour correspond au marqueur, on rafraichit
|
66 |
// Si le numéro de séquence du retour correspond au marqueur, on rafraichit
|
67 |
Requete requete = requetes.get(marqueurRetour);
|
67 |
Requete requete = requetes.get(marqueurRetour);
|
68 |
if (Mediateur.DEBUG) System.out.println("<|-- Sequenceur : Retourne paquet n°"+reponse.obtenirNumeroSequence()+" à "+requete.getVueARafraichir().getClass().toString());
|
68 |
if (Mediateur.DEBUG) System.out.println("<|-- Sequenceur : Retourne paquet n°"+reponse.obtenirNumeroSequence()+" à "+requete.getVueARafraichir().getClass().toString());
|
69 |
requete.rafraichir(reponse.obtenirRetour());
|
69 |
requete.rafraichir(reponse.obtenirRetour());
|
70 |
mediateur.desactiverChargement();
|
70 |
mediateur.desactiverChargement(this);
|
71 |
requetes.remove(marqueurRetour);
|
71 |
requetes.remove(marqueurRetour);
|
72 |
marqueurRetour++;
|
72 |
marqueurRetour++;
|
73 |
avancerSequence();
|
73 |
avancerSequence();
|
74 |
} else {
|
74 |
} else {
|
75 |
// Sinon, on enregistre le retour
|
75 |
// Sinon, on enregistre le retour
|
Line 79... |
Line 79... |
79 |
if (Mediateur.DEBUG) {
|
79 |
if (Mediateur.DEBUG) {
|
80 |
System.out.println("<== Sequenceur : Réception d'une réponse incorrecte");
|
80 |
System.out.println("<== Sequenceur : Réception d'une réponse incorrecte");
|
81 |
System.out.println(" Le séquenceur ne peut recevoir que des Reponse");
|
81 |
System.out.println(" Le séquenceur ne peut recevoir que des Reponse");
|
82 |
System.out.println(" > nouvellesDonnees = "+nouvellesDonnees.getClass().toString());
|
82 |
System.out.println(" > nouvellesDonnees = "+nouvellesDonnees.getClass().toString());
|
83 |
}
|
83 |
}
|
84 |
mediateur.desactiverChargement();
|
84 |
mediateur.desactiverChargement(this);
|
85 |
}
|
85 |
}
|
86 |
}
|
86 |
}
|
Line 87... |
Line 87... |
87 |
|
87 |
|
88 |
public int obtenirNumeroSequence() {
|
88 |
public int obtenirNumeroSequence() {
|
Line 93... |
Line 93... |
93 |
if (requetes.size()>0) {
|
93 |
if (requetes.size()>0) {
|
94 |
// on récupère la première requete dans la file
|
94 |
// on récupère la première requete dans la file
|
95 |
Requete premiereRequete = requetes.get(marqueurRetour);
|
95 |
Requete premiereRequete = requetes.get(marqueurRetour);
|
96 |
if (premiereRequete!=null && premiereRequete.hasResponse()) {
|
96 |
if (premiereRequete!=null && premiereRequete.hasResponse()) {
|
97 |
if (Mediateur.DEBUG) System.out.println("<|-- Sequenceur : Retourne paquet n°"+premiereRequete.obtenirReponse().obtenirNumeroSequence()+" à "+premiereRequete.getVueARafraichir().getClass().toString());
|
97 |
if (Mediateur.DEBUG) System.out.println("<|-- Sequenceur : Retourne paquet n°"+premiereRequete.obtenirReponse().obtenirNumeroSequence()+" à "+premiereRequete.getVueARafraichir().getClass().toString());
|
98 |
premiereRequete.rafraichir();
|
98 |
premiereRequete.rafraichir();
|
99 |
mediateur.desactiverChargement();
|
99 |
mediateur.desactiverChargement(this);
|
100 |
requetes.remove(marqueurRetour);
|
100 |
requetes.remove(marqueurRetour);
|
101 |
marqueurRetour++;
|
101 |
marqueurRetour++;
|
102 |
avancerSequence();
|
102 |
avancerSequence();
|
103 |
}
|
103 |
}
|
104 |
}
|
104 |
}
|