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
|
||||
|
||||
class Affichage {
|
||||
voirMessages()
|
||||
voirUtilisateurs()
|
||||
package Controller <<Rectangle>> {
|
||||
abstract class Network {
|
||||
|
||||
}
|
||||
|
||||
|
||||
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
|
||||
participant UserAgent
|
||||
participant DatabaseManager
|
||||
participant TCPNetworkManager
|
||||
participant BroadcastNetworkManager
|
||||
database IdManager
|
||||
participant NetworkManager
|
||||
|
||||
/' To do : etablissement de connexion
|
||||
+ corriger parametre des fonctions '/
|
||||
|
@ -16,8 +17,14 @@ group Connexion
|
|||
User -> UserAgent : connexion()
|
||||
|
||||
alt PremiereConnexion
|
||||
UserAgent -> IdManager --++ #lightgrey : getNextId()
|
||||
IdManager -> UserAgent -- #lightgrey : sendId()
|
||||
UserAgent -> BroadcastNetworkManager --++ #lightgrey : getServerAddress()
|
||||
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
|
||||
UserAgent -> UserAgent : getSelfId()
|
||||
|
@ -25,12 +32,12 @@ group Connexion
|
|||
loop PseudoLibre
|
||||
UserAgent -> User --++ #lightgrey : saisirPseudo()
|
||||
User -> UserAgent --++ #lightgrey : envoyerPseudo(Pseudo)
|
||||
UserAgent -> NetworkManager --++ #lightgrey : sendInformation(port, ip, id, pseudo)
|
||||
UserAgent -> BroadcastNetworkManager --++ #lightgrey : sendInformation(port, ip, id, pseudo)
|
||||
alt
|
||||
NetworkManager -> UserAgent --++ #lightgrey: pseudoDejaPris()
|
||||
BroadcastNetworkManager -> UserAgent --++ #lightgrey: pseudoDejaPris()
|
||||
UserAgent -> UserAgent -- : PseudoLibre = False
|
||||
else
|
||||
NetworkManager -> UserAgent --++ #lightgrey : sendInformation(port, ip, id, pseudo)
|
||||
BroadcastNetworkManager -> UserAgent --++ #lightgrey : sendInformation(port, ip, id, pseudo)
|
||||
UserAgent -> UserAgent -- : PseudoLibre = True
|
||||
end
|
||||
end
|
||||
|
@ -43,7 +50,7 @@ end
|
|||
|
||||
group DeconnexionUser
|
||||
User -> UserAgent --++ #lightgrey : deconnexion()
|
||||
UserAgent -> NetworkManager -- : deconnexion()
|
||||
UserAgent -> BroadcastNetworkManager -- : deconnexion()
|
||||
end
|
||||
|
||||
group ChangerPseudo
|
||||
|
@ -51,12 +58,12 @@ group ChangerPseudo
|
|||
loop PseudoLibre
|
||||
UserAgent -> User --++ #lightgrey : saisirPseudo()
|
||||
User -> UserAgent --++ #lightgrey : envoyerPseudo(Pseudo)
|
||||
UserAgent -> NetworkManager --++ #lightgrey : sendInformation(port, ip, id, pseudo)
|
||||
UserAgent -> BroadcastNetworkManager --++ #lightgrey : sendInformation(port, ip, id, pseudo)
|
||||
alt
|
||||
NetworkManager -> UserAgent --++ #lightgrey: pseudoDejaPris()
|
||||
BroadcastNetworkManager -> UserAgent --++ #lightgrey: pseudoDejaPris()
|
||||
UserAgent -> UserAgent -- : PseudoLibre = False
|
||||
else
|
||||
NetworkManager -> UserAgent --++ #lightgrey : sendInformation(port, ip, id, pseudo)
|
||||
BroadcastNetworkManager -> UserAgent --++ #lightgrey : sendInformation(port, ip, id, pseudo)
|
||||
UserAgent -> UserAgent -- : PseudoLibre = True
|
||||
end
|
||||
end
|
||||
|
|
|
@ -4,7 +4,7 @@ actor User
|
|||
participant UserAgent
|
||||
participant Os
|
||||
participant DatabaseManager
|
||||
participant NetworkManager
|
||||
participant TCPNetworkManager
|
||||
|
||||
group MinimiserFenetre
|
||||
User -> UserAgent --++ #lightgrey : MinimiserFentre()
|
||||
|
@ -22,24 +22,24 @@ end
|
|||
|
||||
group EnvoyerMessage /' pas d'acquitement de messages car UDP '/
|
||||
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)
|
||||
end
|
||||
|
||||
group EnvoyerFichier /' pas d'acquitement de messages car UDP '/
|
||||
User -> UserAgent --++ #lightgrey : sendFichier(fichier)
|
||||
UserAgent -> NetworkManager -- : commute(fichier)
|
||||
UserAgent -> TCPNetworkManager -- : commute(fichier)
|
||||
UserAgent -> DatabaseManager -- : storeHistorique(fichier)
|
||||
end
|
||||
|
||||
group recevoirMessage
|
||||
NetworkManager -> UserAgent --++ #lightgrey : receptionMessage(message)
|
||||
TCPNetworkManager -> UserAgent --++ #lightgrey : receptionMessage(message)
|
||||
UserAgent -> User -- : afficheMessage(message)
|
||||
UserAgent -> DatabaseManager -- : storeHistorique(message)
|
||||
end
|
||||
|
||||
group recevoirFichier
|
||||
NetworkManager -> UserAgent --++ #lightgrey : receptionFichier(fichier)
|
||||
TCPNetworkManager -> UserAgent --++ #lightgrey : receptionFichier(fichier)
|
||||
UserAgent -> User -- : afficheFichier(fichier)
|
||||
UserAgent -> DatabaseManager -- : storeHistorique(fichier)
|
||||
end
|
||||
|
|
Loading…
Reference in a new issue