Il y a deux semaines: - Single Access Point (1 point d'entrée, Singleton) - Check Point (Point de contrôle, SAP et Strategies) Nouveau pattern: Session (chat) - socket de connexion (thread) ⎤ - timestamp de la dernière connexion ⎥ => pattern État - UserInfo ⎦ durée d'inactivité <> ┌───────────────────┐ │ Session │ <> ├───────────────────┤ ┌───────────────────┐ │ +verif() │ │ État │ │ #setEtat(état) │◊------------------>├───────────────────┤ │ │ │+verif(Session) │ │ │ └───────────────────┘ └───────────────────┘ △ △ / \ / \ / \ / \ / \ / \ / \ / \ ┌───────────────────┐ ┌───────────────────┐ │ Inactif │ │ Actif │ ├───────────────────┤ ├───────────────────┤ │ +verif(Session) │ │ +verif(Session) │ └───────────────────┘ └───────────────────┘ Une session par client ┌───────────────────┐ │ UserSession │ ├───────────────────┤ │ │ └───────────────────┘ \ \ \ \ \ \ <> ┌───────────────────┐ │ Privilège │ <> ├───────────────────┤ ┌───────────────────┐ │ │ * │ Rôle │ │ │-------------------◊├───────────────────┤ │ │ │ │ │ │ └───────────────────┘ └───────────────────┘ △ △ / \ / \ / \ / \ / \ / \ / \ / \ ┌───────────────────┐ ┌───────────────────┐ │ Admin │ │ Modérateur │ ├───────────────────┤ ├───────────────────┤ │ │ │ │ └───────────────────┘ └───────────────────┘