/////////////////////////////////////////////////////////////////////////////////////////////// /// <summary> /// Traite une requete /// </summary> /// <param name="client"></param> /////////////////////////////////////////////////////////////////////////////////////////////// public static void traiteRequete(object client) { nbRequetes++; Mainform.UpdateNbRequetes(); try { bool continuer = true; TcpClient tcpClient = client as TcpClient; NetworkStream clntStream = tcpClient.GetStream(); SocketUtils clientStream = new SocketUtils(clntStream); //do //{ string commande = clientStream.LireLigne(); if (commande?.Length > 0) { Mainform.WriteMessageToConsole($"Requête: {commande}"); switch (commande) { case TEST_ADRESSE: testAdresse(clientStream); break; case CREER_REPERTOIRE: creerRepertoire(clientStream); break; case FICHIER_EXISTE: fichierExiste(clientStream); break; case UPLOAD_FICHIER: transferFichier(clientStream); break; case TRANSFERT_FICHIER_DATE: transferFichierDate(clientStream); break; case CHANGE_DATE: setDate(clientStream); break; case INVALIDES_CHEMIN: caracteresInvalidesChemin(clientStream); break; case FERMER: continuer = false; break; case LISTE_FICHIERS: listeFichiers(clientStream); break; case LISTE_REPERTOIRES: listeRepertoires(clientStream); break; case DOWNLOAD_FICHIER: downloadFichier(clientStream); break; default: Mainform.WriteErrorToConsole($"Commande inconnue: '{commande}'"); break; } } //} //while (continuer); Mainform.WriteMessageToConsole("Socket closed"); } catch (Exception e) { Mainform.WriteErrorToConsole("Erreur dans le traitement de la requête"); Mainform.WriteExceptionToConsole(e); } nbRequetes--; Mainform.UpdateNbRequetes(); }