ALEJEUNE-RLACROIX_UML/DSGestionUtilisateur.uml
2022-11-07 15:38:00 +01:00

65 lines
No EOL
1.9 KiB
Text

@startuml
actor User
participant UserAgent
participant DatabaseManager
database IdManager
participant NetworkManager
/' To do : etablissement de connexion
+ corriger parametre des fonctions '/
group Connexion
User -> UserAgent : connexion()
alt PremiereConnexion
UserAgent -> IdManager --++ #lightgrey : getNextId()
IdManager -> UserAgent -- #lightgrey : sendId()
else DejaConnecte
UserAgent -> UserAgent : getSelfId()
end
loop PseudoLibre
UserAgent -> User --++ #lightgrey : saisirPseudo()
User -> UserAgent --++ #lightgrey : envoyerPseudo(Pseudo)
UserAgent -> NetworkManager --++ #lightgrey : sendInformation(port, ip, id, pseudo)
alt
NetworkManager -> UserAgent --++ #lightgrey: pseudoDejaPris()
UserAgent -> UserAgent -- : PseudoLibre = False
else
NetworkManager -> UserAgent --++ #lightgrey : sendInformation(port, ip, id, pseudo)
UserAgent -> UserAgent -- : PseudoLibre = True
end
end
UserAgent -> DatabaseManager -- #lightgrey : storeInformations()
UserAgent --> User -- : ok()
end
group DeconnexionUser
User -> UserAgent --++ #lightgrey : deconnexion()
UserAgent -> NetworkManager -- : deconnexion()
end
group ChangerPseudo
User -> UserAgent --++ #lightgrey : changerPseudo()
loop PseudoLibre
UserAgent -> User --++ #lightgrey : saisirPseudo()
User -> UserAgent --++ #lightgrey : envoyerPseudo(Pseudo)
UserAgent -> NetworkManager --++ #lightgrey : sendInformation(port, ip, id, pseudo)
alt
NetworkManager -> UserAgent --++ #lightgrey: pseudoDejaPris()
UserAgent -> UserAgent -- : PseudoLibre = False
else
NetworkManager -> UserAgent --++ #lightgrey : sendInformation(port, ip, id, pseudo)
UserAgent -> UserAgent -- : PseudoLibre = True
end
end
end
@enduml