From e7ca8d4abb84bc339003934aff21df52a3d36213 Mon Sep 17 00:00:00 2001 From: Ivan Olexyn Date: Sat, 18 Apr 2020 23:54:32 +0200 Subject: [PATCH] + threads for handlers. --- mispbridge/src/BridgeServlet.java | 37 +++++++++++++++++++++++-------- 1 file changed, 28 insertions(+), 9 deletions(-) diff --git a/mispbridge/src/BridgeServlet.java b/mispbridge/src/BridgeServlet.java index 2d3641d..98a6e12 100644 --- a/mispbridge/src/BridgeServlet.java +++ b/mispbridge/src/BridgeServlet.java @@ -25,20 +25,36 @@ public class BridgeServlet extends HttpServlet { // ####### @Override - public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { + public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException { String jsonPayload = IOUtils.toString(request.getReader()); if (jsonPayload.contains("LINK")) { - handleGetLink(request, response); + Thread handleGetLinkThread = new Thread(() -> { + try { + handleGetLink(request, response); + } catch (IOException e) { + e.printStackTrace(); + } + }); + handleGetLinkThread.start(); } else { Ride ridePayload = new Ride(jsonPayload); boolean hasReqeust = ridePayload.getRequest() != null; boolean hasData = ridePayload.getData() != null; - if (!hasReqeust && !hasData) { handleGetRide(request, response);} - if (hasReqeust && !hasData) { handleGetRideRequest(request, response);} - if (hasReqeust && hasData) { handleGetRideRequestData(request, response);} + if (!hasReqeust && !hasData) { + Thread handleGetRideThread = new Thread(() -> handleGetRide(request, response)); + handleGetRideThread.start(); + } + if (hasReqeust && !hasData) { + Thread handleGetRideRequestThread = new Thread(() -> handleGetRideRequest(request, response)); + handleGetRideRequestThread.start(); + } + if (hasReqeust && hasData) { + Thread handleGetRideRequestDataThread = new Thread(() -> handleGetRideRequestData(request, response)); + handleGetRideRequestDataThread.start(); + } } } @@ -50,7 +66,7 @@ public class BridgeServlet extends HttpServlet { * send OK (Ride) to mispclient * send OK (Ride) to public */ - protected Ride handleGetLink(HttpServletRequest request, HttpServletResponse response) { + protected Ride handleGetLink(HttpServletRequest request, HttpServletResponse response) throws IOException { // # send OK (Ride) to public return new Ride(); } @@ -106,8 +122,11 @@ public class BridgeServlet extends HttpServlet { @Override public void doPost(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { - - handlePostRide(request, response); + Thread handlePostRideThread = new Thread(() -> { + try {handlePostRide(request, response); } catch (IOException | InterruptedException e) { e.printStackTrace(); } + }); + handlePostRideThread.setName("handlePostRideThread"); + handlePostRideThread.start(); } @@ -115,7 +134,7 @@ public class BridgeServlet extends HttpServlet { * handle POST (Ride) * add Ride to AvailableRides */ - protected Ride handlePostRide(HttpServletRequest request, HttpServletResponse response) { + protected Ride handlePostRide(HttpServletRequest request, HttpServletResponse response) throws IOException, InterruptedException { // # send OK (Ride) to mispclient return new Ride(); }