finished class
This commit is contained in:
parent
5f58d94fe2
commit
6c2e0d7c11
3 changed files with 145 additions and 22 deletions
130
DClass.uml
130
DClass.uml
|
@ -1,15 +1,131 @@
|
||||||
@startuml
|
@startuml
|
||||||
|
|
||||||
class Affichage {
|
package Controller <<Rectangle>> {
|
||||||
voirMessages()
|
abstract class Network {
|
||||||
voirUtilisateurs()
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
class NetworkManager {
|
||||||
|
sendMessage(message, ip, port, id)
|
||||||
|
receiveMessage(message, id)
|
||||||
|
}
|
||||||
|
|
||||||
|
class IdManager {
|
||||||
|
getNextID()
|
||||||
|
}
|
||||||
|
|
||||||
|
class ThreadManager {
|
||||||
|
ThreadList : ThreadList
|
||||||
|
NewThread()
|
||||||
|
}
|
||||||
|
|
||||||
|
class TCPNetworkManager {
|
||||||
|
connect(port, ip);
|
||||||
|
send(port, ip, message);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
class AccountManager {
|
||||||
|
connection()
|
||||||
|
setName(Name : String)
|
||||||
|
deconnection()
|
||||||
|
}
|
||||||
|
|
||||||
|
class ConversationManager {
|
||||||
|
addMessage(message,conversation)
|
||||||
|
getHistorique()
|
||||||
|
getListeUtilisateurs()
|
||||||
|
}
|
||||||
|
|
||||||
|
class BroadcastNetworkManager {
|
||||||
|
pingSend(message)
|
||||||
|
}
|
||||||
|
|
||||||
|
NetworkManager <--- BroadcastNetworkManager
|
||||||
|
NetworkManager <--- TCPNetworkManager
|
||||||
|
|
||||||
|
TCPNetworkManager <|-- Network
|
||||||
|
BroadcastNetworkManager <|-- Network
|
||||||
|
AccountManager -- NetworkManager
|
||||||
|
ConversationManager -- NetworkManager
|
||||||
}
|
}
|
||||||
|
|
||||||
class NetworkManager {
|
'=============================================='
|
||||||
sendMessage(message, ip, port, id)
|
|
||||||
receiveMessage(message, id)
|
package Model <<Rectangle>> {
|
||||||
|
|
||||||
|
class Conversation {
|
||||||
|
user : User
|
||||||
|
listeMessage : Arraylist<Message>
|
||||||
|
}
|
||||||
|
|
||||||
|
class Message{
|
||||||
|
user : User
|
||||||
|
body : String
|
||||||
|
date : Date
|
||||||
|
}
|
||||||
|
|
||||||
|
class ThreadList{
|
||||||
|
listThread : Arraylist<Thread>
|
||||||
|
}
|
||||||
|
|
||||||
|
class User{
|
||||||
|
name : String
|
||||||
|
id : Int
|
||||||
|
status : Boolean 'connecté ou non'
|
||||||
|
port : Int
|
||||||
|
ip : Inet_Addr
|
||||||
|
}
|
||||||
|
|
||||||
|
class Annuaire {
|
||||||
|
listUser : Arraylist<User>
|
||||||
|
}
|
||||||
|
|
||||||
|
Conversation "1" <-- "*" User /'notes to self'/
|
||||||
|
Conversation "1" <-- "*" Message
|
||||||
|
Message "*" <-- "*" User
|
||||||
|
|
||||||
|
Annuaire "1" <-- "*" User
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
'=============================================='
|
||||||
|
|
||||||
|
|
||||||
|
package View <<Rectangle>> {
|
||||||
|
|
||||||
|
abstract class Display {
|
||||||
|
SetDarkMode()
|
||||||
|
}
|
||||||
|
|
||||||
|
class UserListDislay {
|
||||||
|
afficherUtilisateurs()
|
||||||
|
}
|
||||||
|
|
||||||
|
class MessageDislay {
|
||||||
|
afficherMessages()
|
||||||
|
}
|
||||||
|
|
||||||
|
class FirstLoginDisplay {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
class ChangePseudoDisplay {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
UserListDislay <|-- Display
|
||||||
|
MessageDislay <|-- Display
|
||||||
|
FirstLoginDisplay <|-- Display
|
||||||
|
ChangePseudoDisplay <|-- Display
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@enduml
|
AccountManager -- User
|
||||||
|
|
||||||
|
ThreadManager <--- ThreadList
|
||||||
|
Model ----- ConversationManager
|
||||||
|
|
||||||
|
|
||||||
|
@enduml
|
||||||
|
|
|
@ -3,8 +3,9 @@
|
||||||
actor User
|
actor User
|
||||||
participant UserAgent
|
participant UserAgent
|
||||||
participant DatabaseManager
|
participant DatabaseManager
|
||||||
|
participant TCPNetworkManager
|
||||||
|
participant BroadcastNetworkManager
|
||||||
database IdManager
|
database IdManager
|
||||||
participant NetworkManager
|
|
||||||
|
|
||||||
/' To do : etablissement de connexion
|
/' To do : etablissement de connexion
|
||||||
+ corriger parametre des fonctions '/
|
+ corriger parametre des fonctions '/
|
||||||
|
@ -16,8 +17,14 @@ group Connexion
|
||||||
User -> UserAgent : connexion()
|
User -> UserAgent : connexion()
|
||||||
|
|
||||||
alt PremiereConnexion
|
alt PremiereConnexion
|
||||||
UserAgent -> IdManager --++ #lightgrey : getNextId()
|
UserAgent -> BroadcastNetworkManager --++ #lightgrey : getServerAddress()
|
||||||
IdManager -> UserAgent -- #lightgrey : sendId()
|
BroadcastNetworkManager -> IdManager --++ #lightgrey : getServerAddress()
|
||||||
|
IdManager -> BroadcastNetworkManager --++ #lightgrey : ServerAddress
|
||||||
|
BroadcastNetworkManager -> UserAgent --++ #lightgrey : ServerAddress
|
||||||
|
UserAgent -> TCPNetworkManager --++ #lightgrey : getNextId()
|
||||||
|
TCPNetworkManager -> IdManager --++ #lightgrey : getNextId()
|
||||||
|
IdManager -> TCPNetworkManager --++ #lightgrey : sendId()
|
||||||
|
TCPNetworkManager -> UserAgent -- #lightgrey : sendId()
|
||||||
|
|
||||||
else DejaConnecte
|
else DejaConnecte
|
||||||
UserAgent -> UserAgent : getSelfId()
|
UserAgent -> UserAgent : getSelfId()
|
||||||
|
@ -25,12 +32,12 @@ group Connexion
|
||||||
loop PseudoLibre
|
loop PseudoLibre
|
||||||
UserAgent -> User --++ #lightgrey : saisirPseudo()
|
UserAgent -> User --++ #lightgrey : saisirPseudo()
|
||||||
User -> UserAgent --++ #lightgrey : envoyerPseudo(Pseudo)
|
User -> UserAgent --++ #lightgrey : envoyerPseudo(Pseudo)
|
||||||
UserAgent -> NetworkManager --++ #lightgrey : sendInformation(port, ip, id, pseudo)
|
UserAgent -> BroadcastNetworkManager --++ #lightgrey : sendInformation(port, ip, id, pseudo)
|
||||||
alt
|
alt
|
||||||
NetworkManager -> UserAgent --++ #lightgrey: pseudoDejaPris()
|
BroadcastNetworkManager -> UserAgent --++ #lightgrey: pseudoDejaPris()
|
||||||
UserAgent -> UserAgent -- : PseudoLibre = False
|
UserAgent -> UserAgent -- : PseudoLibre = False
|
||||||
else
|
else
|
||||||
NetworkManager -> UserAgent --++ #lightgrey : sendInformation(port, ip, id, pseudo)
|
BroadcastNetworkManager -> UserAgent --++ #lightgrey : sendInformation(port, ip, id, pseudo)
|
||||||
UserAgent -> UserAgent -- : PseudoLibre = True
|
UserAgent -> UserAgent -- : PseudoLibre = True
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
@ -43,7 +50,7 @@ end
|
||||||
|
|
||||||
group DeconnexionUser
|
group DeconnexionUser
|
||||||
User -> UserAgent --++ #lightgrey : deconnexion()
|
User -> UserAgent --++ #lightgrey : deconnexion()
|
||||||
UserAgent -> NetworkManager -- : deconnexion()
|
UserAgent -> BroadcastNetworkManager -- : deconnexion()
|
||||||
end
|
end
|
||||||
|
|
||||||
group ChangerPseudo
|
group ChangerPseudo
|
||||||
|
@ -51,12 +58,12 @@ group ChangerPseudo
|
||||||
loop PseudoLibre
|
loop PseudoLibre
|
||||||
UserAgent -> User --++ #lightgrey : saisirPseudo()
|
UserAgent -> User --++ #lightgrey : saisirPseudo()
|
||||||
User -> UserAgent --++ #lightgrey : envoyerPseudo(Pseudo)
|
User -> UserAgent --++ #lightgrey : envoyerPseudo(Pseudo)
|
||||||
UserAgent -> NetworkManager --++ #lightgrey : sendInformation(port, ip, id, pseudo)
|
UserAgent -> BroadcastNetworkManager --++ #lightgrey : sendInformation(port, ip, id, pseudo)
|
||||||
alt
|
alt
|
||||||
NetworkManager -> UserAgent --++ #lightgrey: pseudoDejaPris()
|
BroadcastNetworkManager -> UserAgent --++ #lightgrey: pseudoDejaPris()
|
||||||
UserAgent -> UserAgent -- : PseudoLibre = False
|
UserAgent -> UserAgent -- : PseudoLibre = False
|
||||||
else
|
else
|
||||||
NetworkManager -> UserAgent --++ #lightgrey : sendInformation(port, ip, id, pseudo)
|
BroadcastNetworkManager -> UserAgent --++ #lightgrey : sendInformation(port, ip, id, pseudo)
|
||||||
UserAgent -> UserAgent -- : PseudoLibre = True
|
UserAgent -> UserAgent -- : PseudoLibre = True
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -4,7 +4,7 @@ actor User
|
||||||
participant UserAgent
|
participant UserAgent
|
||||||
participant Os
|
participant Os
|
||||||
participant DatabaseManager
|
participant DatabaseManager
|
||||||
participant NetworkManager
|
participant TCPNetworkManager
|
||||||
|
|
||||||
group MinimiserFenetre
|
group MinimiserFenetre
|
||||||
User -> UserAgent --++ #lightgrey : MinimiserFentre()
|
User -> UserAgent --++ #lightgrey : MinimiserFentre()
|
||||||
|
@ -22,24 +22,24 @@ end
|
||||||
|
|
||||||
group EnvoyerMessage /' pas d'acquitement de messages car UDP '/
|
group EnvoyerMessage /' pas d'acquitement de messages car UDP '/
|
||||||
User -> UserAgent --++ #lightgrey : sendMessage(message, ip, port, id)
|
User -> UserAgent --++ #lightgrey : sendMessage(message, ip, port, id)
|
||||||
UserAgent -> NetworkManager -- : commute(message, ip, port, id)
|
UserAgent -> TCPNetworkManager -- : commute(message, ip, port, id)
|
||||||
UserAgent -> DatabaseManager -- : storeHistorique(message, id)
|
UserAgent -> DatabaseManager -- : storeHistorique(message, id)
|
||||||
end
|
end
|
||||||
|
|
||||||
group EnvoyerFichier /' pas d'acquitement de messages car UDP '/
|
group EnvoyerFichier /' pas d'acquitement de messages car UDP '/
|
||||||
User -> UserAgent --++ #lightgrey : sendFichier(fichier)
|
User -> UserAgent --++ #lightgrey : sendFichier(fichier)
|
||||||
UserAgent -> NetworkManager -- : commute(fichier)
|
UserAgent -> TCPNetworkManager -- : commute(fichier)
|
||||||
UserAgent -> DatabaseManager -- : storeHistorique(fichier)
|
UserAgent -> DatabaseManager -- : storeHistorique(fichier)
|
||||||
end
|
end
|
||||||
|
|
||||||
group recevoirMessage
|
group recevoirMessage
|
||||||
NetworkManager -> UserAgent --++ #lightgrey : receptionMessage(message)
|
TCPNetworkManager -> UserAgent --++ #lightgrey : receptionMessage(message)
|
||||||
UserAgent -> User -- : afficheMessage(message)
|
UserAgent -> User -- : afficheMessage(message)
|
||||||
UserAgent -> DatabaseManager -- : storeHistorique(message)
|
UserAgent -> DatabaseManager -- : storeHistorique(message)
|
||||||
end
|
end
|
||||||
|
|
||||||
group recevoirFichier
|
group recevoirFichier
|
||||||
NetworkManager -> UserAgent --++ #lightgrey : receptionFichier(fichier)
|
TCPNetworkManager -> UserAgent --++ #lightgrey : receptionFichier(fichier)
|
||||||
UserAgent -> User -- : afficheFichier(fichier)
|
UserAgent -> User -- : afficheFichier(fichier)
|
||||||
UserAgent -> DatabaseManager -- : storeHistorique(fichier)
|
UserAgent -> DatabaseManager -- : storeHistorique(fichier)
|
||||||
end
|
end
|
||||||
|
|
Loading…
Reference in a new issue