Package MNP
Class AbstractChangementFactoryNP
- java.lang.Object
-
- MNP.AbstractChangementFactoryNP
-
- All Implemented Interfaces:
AbstractChangementFactory
public class AbstractChangementFactoryNP extends java.lang.Object implements AbstractChangementFactory
Usine abstraite gérant l'ensemble des changements.
-
-
Constructor Summary
Constructors Constructor Description AbstractChangementFactoryNP(AbstractGroupeFactory agf)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidapplyChangement(Changement c)permet de mettre en oeuvre un changement connu de l'usine abstraite.voidcreateChangement(Groupe A, Etudiant e, Groupe B)permet d'ajouter un nouveau changement.voiddeleteChangement(Changement c)permet de supprimer un changement connu de l'usine abstraite.java.util.Set<Changement>getAllChangements()permet de récupérer les changementsAbstractGroupeFactorygetGroupeFactory()permet de récupérer l'usine abstraite pour les groupes qui fonctionne en tandem avec cette usine abstraite
-
-
-
Constructor Detail
-
AbstractChangementFactoryNP
public AbstractChangementFactoryNP(AbstractGroupeFactory agf)
-
-
Method Detail
-
getGroupeFactory
public AbstractGroupeFactory getGroupeFactory()
permet de récupérer l'usine abstraite pour les groupes qui fonctionne en tandem avec cette usine abstraite- Specified by:
getGroupeFactoryin interfaceAbstractChangementFactory- Returns:
- cette usine abstraite pour les groupes
-
getAllChangements
public java.util.Set<Changement> getAllChangements()
permet de récupérer les changements- Specified by:
getAllChangementsin interfaceAbstractChangementFactory- Returns:
- l'ensemble de tous les changements en attente
-
applyChangement
public void applyChangement(Changement c)
permet de mettre en oeuvre un changement connu de l'usine abstraite.- Specified by:
applyChangementin interfaceAbstractChangementFactory- Throws:
java.lang.NullPointerException- si un argument est nulljava.lang.IllegalStateException- si le changement n'a pas de sens en l'état actuel (e.g. étudiant pas dans le groupe de départ a, groupe b inconnu, groupe a inconnu, etc).java.lang.IllegalArgumentException- si inconnu de l'usine abstraite
-
deleteChangement
public void deleteChangement(Changement c)
permet de supprimer un changement connu de l'usine abstraite.- Specified by:
deleteChangementin interfaceAbstractChangementFactory- Throws:
java.lang.NullPointerException- si un argument est nulljava.lang.IllegalArgumentException- si inconnu de l'usine abstraite
-
createChangement
public void createChangement(Groupe A, Etudiant e, Groupe B)
permet d'ajouter un nouveau changement.- Specified by:
createChangementin interfaceAbstractChangementFactory- Parameters:
A- groupe actuelB- groupe demandée- étudiant concerné par le changement- Throws:
java.lang.NullPointerException- si un argument est nulljava.lang.IllegalArgumentException- si les groupes ou l'étudiant ne sont pas connus de la factory partenaire, ou e n'appartient pas à A ou A et B ne sont pas frères dans l'arbre des groupes.
-
-