Code source de parse.entree_log_apache

"""
Module qui contient la classe pour représenter une entrée log Apache.
"""

from dataclasses import dataclass
from donnees.client_informations import ClientInformations
from donnees.requete_informations import RequeteInformations
from donnees.reponse_informations import ReponseInformations


[docs] @dataclass class EntreeLogApache: """ Représente une entrée dans un fichier de log Apache. Attributes: client (ClientInformations): Les informations du client. requete (RequeteInformations): Les informations de la requête. reponse (ReponseInformations): Les informations de la réponse. """ client: ClientInformations requete: RequeteInformations reponse: ReponseInformations def __post_init__(self): """ Vérifie le bon type des données de cette classe lors de l'initialisation de l'instance. Raises: TypeError: Une donnée n'est pas du bon type. """ # Validation des informations if not isinstance(self.client, ClientInformations): raise TypeError( "Les informations du client dans une entrée doivent être" "regroupées au sein d'un objet ClientInformations." ) if not isinstance(self.requete, RequeteInformations): raise TypeError( "Les informations de la requête dans une entrée doivent être" "regroupées au sein d'un objet RequeteInformations." ) if not isinstance(self.reponse, ReponseInformations): raise TypeError( "Les informations de la réponse dans une entrée doivent être" "regroupées au sein d'un objet ReponseInformations." )