Beispiel #1
0
        private static IPayload DeserialiserRendezVous(string message)
        {
            if (string.IsNullOrEmpty(message))
            {
                throw new ArgumentNullException(nameof(message));
            }

            PayloadRendezVous payload;

            try
            {
                payload = JsonConvert.DeserializeObject <PayloadRendezVous>(message);
            }
            catch (JsonReaderException jre)
            {
                Log.EcrireErreur($"[ControleurRdv] > Erreur désérialisation : {jre.Message}");
                throw new InvalidDataException("Données non conformes", jre);
            }

            if (!payload.Data.Agents.Any())
            {
                throw new InvalidDataException("Aucun agent n'a été spécifié.");
            }

            if (!Validateur.GetRegExEmail().IsMatch(payload.Data.Agents[0].Email))
            {
                throw new InvalidDataException("L'email n'est pas valide.");
            }

            return(payload);
        }
Beispiel #2
0
        private static IPayload DeserialiserPlageOuverture(string message)
        {
            if (string.IsNullOrEmpty(message))
            {
                throw new ArgumentNullException(nameof(message));
            }

            PayloadPlageOuverture payload;

            try
            {
                payload = JsonConvert.DeserializeObject <PayloadPlageOuverture>(message);
            }
            catch (JsonReaderException jre)
            {
                Log.EcrireErreur($"[ControleurRdv] > Erreur désérialisation : {jre.Message}");
                throw new InvalidDataException("Données non conformes", jre);
            }

            if (payload.Data.Agent == null)
            {
                throw new InvalidDataException("Aucun agent n'a été spécifié.");
            }

            if (!Validateur.GetRegExEmail().IsMatch(payload.Data.Agent.Email))
            {
                throw new InvalidDataException("L'email n'est pas valide.");
            }

            if (payload.Data.Motifs == null || string.IsNullOrEmpty(payload.Data.Motifs[0].Name))
            {
                throw new InvalidDataException("Aucun motif n'a été spécifié.");
            }

            if (payload.Data.Lieu == null || string.IsNullOrEmpty(payload.Data.Lieu.Address))
            {
                throw new InvalidDataException("Aucun lieu n'a été spécifié.");
            }

            return(payload);
        }