if(nb > z.getNbFauteuils())
throw new NombreTotalPlacesInsuffisantException("Nombre total de places dans la " +
"Zone est insuffisant pour rechercher "+nb+" places!");
for(Iterator it = z.getLesRangees().iterator(); it.hasNext();){
Rangee r = (Rangee)it.next();
// System.out.println("Parcours de la rangee "+r.getIdRangee());
Collection c;
if((c = getConsecutiveDsRangee(r, nb)) != null){
// on cree une rangee d'identifiant identique
Rangee res = new Rangee(r.getIdRangee());
// puis on remplit ses Places par le resultat obtenu dans c
for(Iterator itC = c.iterator(); itC.hasNext();){
Place p = (Place)itC.next();
/* il faut enlever la place de la Rangee initiale:
* elle n'est plus disponible
*/
r.removePlace(p);
/* Puis il faut l'ajouter dans la Rangee resultat */
res.addPlace(p);
}
// ensuite on retourne la rangee nouvelle
return res;
}
}