1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 | 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é
<<abstract>>
┌───────────────────┐
│ Session │ <<interface>>
├───────────────────┤ ┌───────────────────┐
│ +verif() │ │ État │
│ #setEtat(état) │◊------------------>├───────────────────┤
│ │ │+verif(Session) │
│ │ └───────────────────┘
└───────────────────┘ △ △
/ \
/ \
/ \
/ \
/ \
/ \
/ \
/ \
┌───────────────────┐ ┌───────────────────┐
│ Inactif │ │ Actif │
├───────────────────┤ ├───────────────────┤
│ +verif(Session) │ │ +verif(Session) │
└───────────────────┘ └───────────────────┘
Une session par client
┌───────────────────┐
│ UserSession │
├───────────────────┤
│ │
└───────────────────┘
\
\
\
\
\
\ <<abstract>>
┌───────────────────┐
│ Privilège │ <<abstract>>
├───────────────────┤ ┌───────────────────┐
│ │ * │ Rôle │
│ │-------------------◊├───────────────────┤
│ │ │ │
│ │ └───────────────────┘
└───────────────────┘ △ △
/ \
/ \
/ \
/ \
/ \
/ \
/ \
/ \
┌───────────────────┐ ┌───────────────────┐
│ Admin │ │ Modérateur │
├───────────────────┤ ├───────────────────┤
│ │ │ │
└───────────────────┘ └───────────────────┘
|