Package MNP
Class AbstractChangementFactoryNP
java.lang.Object
MNP.AbstractChangementFactoryNP
- All Implemented Interfaces:
AbstractChangementFactory
Usine abstraite gérant l'ensemble des changements.
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
permet de mettre en oeuvre un changement connu de l'usine abstraite.void
createChangement
(Groupe A, Etudiant e, Groupe B) permet d'ajouter un nouveau changement.void
permet de supprimer un changement connu de l'usine abstraite.permet de récupérer les changementspermet de récupérer l'usine abstraite pour les groupes qui fonctionne en tandem avec cette usine abstraite
-
Constructor Details
-
AbstractChangementFactoryNP
-
-
Method Details
-
getGroupeFactory
permet de récupérer l'usine abstraite pour les groupes qui fonctionne en tandem avec cette usine abstraite- Specified by:
getGroupeFactory
in interfaceAbstractChangementFactory
- Returns:
- cette usine abstraite pour les groupes
-
getAllChangements
permet de récupérer les changements- Specified by:
getAllChangements
in interfaceAbstractChangementFactory
- Returns:
- l'ensemble de tous les changements en attente
-
applyChangement
permet de mettre en oeuvre un changement connu de l'usine abstraite.- Specified by:
applyChangement
in interfaceAbstractChangementFactory
- Throws:
NullPointerException
- si un argument est nullIllegalStateException
- 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).IllegalArgumentException
- si inconnu de l'usine abstraite
-
deleteChangement
permet de supprimer un changement connu de l'usine abstraite.- Specified by:
deleteChangement
in interfaceAbstractChangementFactory
- Throws:
NullPointerException
- si un argument est nullIllegalArgumentException
- si inconnu de l'usine abstraite
-
createChangement
permet d'ajouter un nouveau changement.- Specified by:
createChangement
in interfaceAbstractChangementFactory
- Parameters:
A
- groupe actuelB
- groupe demandée
- étudiant concerné par le changement- Throws:
NullPointerException
- si un argument est nullIllegalArgumentException
- 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.
-