Class ChatEventDTO
java.lang.Object
common.dto.ChatEventDTO
Classe responsable de la structure des événements de chat échangés en JSON.
Cette classe DTO (Data Transfer Object) permet d'avoir un format standardisé
et centralisé pour la communication entre le Client et le Serveur.
Elle encapsule le type d'événement, les données associées et gère la
sérialisation
JSON via Gson pour les échanges réseau.
- Version:
- V1
- Author:
- MateZone Team, Joshua Hermilly, Prévost Donovan
-
Constructor Summary
ConstructorsConstructorDescriptionConstructeur par défaut.ChatEventDTO(EventEnum type) Constructeur avec type d'événement.ChatEventDTO(EventEnum type, List<ChatEventDTO> lstEventDTO) Constructeur pour les événements contenant une liste d'autres événements. -
Method Summary
Modifier and TypeMethodDescriptionAjoute une paire clé-valeur aux données de l'événement.getData()Récupère la map des données associées à l'événement.getDataIndex(int index) Récupère une donnée spécifique par son index dans l'ordre des clés requises.Récupère la liste complète des événements de chat.Récupère la liste des messages (utilisé pour les événements de type MESSAGE_LIST).getType()Récupère le type d'événement.static ChatEventDTOjsonToEventDTO(String json) Désérialise une chaîne JSON en instance ChatEventDTO.static ChatEventDTOjsonToLstEventDTO(String json) Désérialise une chaîne JSON en instance ChatEventDTO avec liste d'événements.voidDéfinit la map des données associées à l'événement.voidsetLstEventDTO(List<ChatEventDTO> lstEventDTO) Définit la liste des événements de chat.voidDéfinit le type d'événement.toJson()Sérialise cette instance en chaîne JSON.toString()Représentation textuelle de l'événement de chat.
-
Constructor Details
-
ChatEventDTO
public ChatEventDTO()Constructeur par défaut. Initialise la map de données vide, prête à recevoir des éléments. -
ChatEventDTO
Constructeur avec type d'événement. Initialise l'événement avec un type spécifique et une map de données vide.- Parameters:
type- le type d'événement à associer à cette instance
-
ChatEventDTO
Constructeur pour les événements contenant une liste d'autres événements. Utilisé spécifiquement pour les événements de type MESSAGE_LIST.- Parameters:
type- le type d'événement (généralement MESSAGE_LIST)lstEventDTO- la liste des événements de chat à inclure
-
-
Method Details
-
getType
Récupère le type d'événement.- Returns:
- le type d'événement associé à cette instance
-
setType
Définit le type d'événement.- Parameters:
type- le nouveau type d'événement à associer
-
getData
-
setData
-
getLstMes
Récupère la liste des messages (utilisé pour les événements de type MESSAGE_LIST).- Returns:
- la liste des événements de chat contenus
-
getDataIndex
Récupère une donnée spécifique par son index dans l'ordre des clés requises. Utilise l'ordre défini dans EventEnum.getRequiredKeys() pour accéder aux données.- Parameters:
index- l'index de la donnée dans l'ordre des clés requises du type d'événement- Returns:
- la valeur associée à l'index, ou null si l'index est invalide
-
getLstEventDTO
Récupère la liste complète des événements de chat.- Returns:
- la liste des événements de chat contenus
-
setLstEventDTO
Définit la liste des événements de chat.- Parameters:
lstEventDTO- la nouvelle liste d'événements à associer
-
add
Ajoute une paire clé-valeur aux données de l'événement. Utilise le pattern Builder pour permettre le chaînage des appels.- Parameters:
key- la clé sous laquelle stocker la valeurvalue- la valeur à associer à la clé- Returns:
- cette instance pour permettre le chaînage des appels
-
jsonToEventDTO
Désérialise une chaîne JSON en instance ChatEventDTO. Utilise Gson pour la conversion automatique depuis le format JSON.- Parameters:
json- la chaîne JSON à désérialiser- Returns:
- l'instance ChatEventDTO correspondant au JSON
-
jsonToLstEventDTO
Désérialise une chaîne JSON en instance ChatEventDTO avec liste d'événements. Spécialement conçue pour les événements de type MESSAGE_LIST qui contiennent une liste d'autres événements de chat.- Parameters:
json- la chaîne JSON contenant un événement avec liste- Returns:
- l'instance ChatEventDTO avec sa liste d'événements correctement configurée
-
toJson
Sérialise cette instance en chaîne JSON. Utilise Gson pour la conversion automatique vers le format JSON.- Returns:
- la représentation JSON de cette instance
-
toString
-