private void serviceClient(Socket clientSocket) { IHttpRequest request; IHttpResponse response; // pour éviter un blocage dans le serveur try { clientSocket.setSoTimeout(10000); } catch (SocketException e) { logger.error(e.getMessage()); try { clientSocket.close(); } catch (IOException e1) { logger.error(e1.getMessage()); } return; } HttpClient httpClient = new HttpClient(clientSocket); try { request = httpClient.getHttpRequest(); logger.info("receive :\n" + request); response = process.run(request); } catch (IOException | MethodeTypeException e) { logger.error(e.getMessage()); response = DefaultResponseFactory.createResponseBadRequestException(e); } httpClient.sendHttpResponse(response); httpClient.shutdown(); }
@Override public void abort() { client.shutdown(); }