diff --git a/mispbridge/src/core/BridgeServlet.java b/mispbridge/src/core/BridgeServlet.java index e432e27..13c9292 100644 --- a/mispbridge/src/core/BridgeServlet.java +++ b/mispbridge/src/core/BridgeServlet.java @@ -28,7 +28,7 @@ public class BridgeServlet extends HttpServlet { String jsonPayload = IOUtils.toString(request.getReader()); - if (jsonPayload.contains("LINK")) { + if (jsonPayload.contains("REQUEST")) { Thread handleGetLinkThread = new Thread(() -> { try { handleGetRequest(request, response); diff --git a/mispmock/src/actor/ActorRunnable.java b/mispmock/src/actor/ActorRunnable.java index b914989..7a190dd 100644 --- a/mispmock/src/actor/ActorRunnable.java +++ b/mispmock/src/actor/ActorRunnable.java @@ -18,7 +18,6 @@ public abstract class ActorRunnable implements Runnable { List exchanges = new ArrayList<>(); - List requests = new ArrayList<>(); protected MockSet mockSet; @@ -33,31 +32,17 @@ public abstract class ActorRunnable implements Runnable { @Override public void run() { - while (true) { - if (requests.size() > 0) { - try { - processRequests(requests.remove(0)); - - } catch (IOException | ServletException e) { - e.printStackTrace(); - } - } - try { - Thread.sleep(100); - } catch (InterruptedException e) { - e.printStackTrace(); - } - } + // } - public void processRequests(HttpServletRequest request) throws IOException, ServletException { + public void processExchange(ExchangeMock exchange) throws IOException, ServletException { - if (request.getMethod().equalsIgnoreCase("GET")) { - doGet(request, null); - } else if (request.getMethod().equalsIgnoreCase("POST")) { - doPost(request, null); + if (exchange.request.getMethod().equalsIgnoreCase("GET")) { + doGet(exchange.request, exchange.response); + } else if (exchange.request.getMethod().equalsIgnoreCase("POST")) { + doPost(exchange.request, exchange.response); } } diff --git a/mispmock/src/actor/UserMock.java b/mispmock/src/actor/UserMock.java index c1252cc..c972d0e 100644 --- a/mispmock/src/actor/UserMock.java +++ b/mispmock/src/actor/UserMock.java @@ -1,13 +1,21 @@ package actor; +import javax.servlet.ServletException; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; +import java.io.DataOutputStream; import java.io.IOException; +import java.net.HttpURLConnection; +import core.ConnectionHelper; import core.MockSet; +import core.Ride; +import core.State; +import exchange.ExchangeMock; public class UserMock extends ActorRunnable { + int requestCount = 0; public UserMock(MockSet mockSet){ super(mockSet); @@ -15,7 +23,15 @@ public class UserMock extends ActorRunnable { @Override public void run() { + while (true){ + try { + Thread.sleep(1000); + sendGetRequest(); + } catch (IOException | InterruptedException e) { + e.printStackTrace(); + } + } } @Override @@ -27,4 +43,35 @@ public class UserMock extends ActorRunnable { void doPost(HttpServletRequest request, HttpServletResponse response) { } + + + + /** + * # send GET (Request) + * Generated by Loop + */ + void sendGetRequest() throws IOException, InterruptedException { + + // Mock Exchange + ExchangeMock exchange = new ExchangeMock(); + + exchange.request.setMethod("GET"); + exchange.request.setContentType("application/json"); + String requestBody = "REQUEST-"+requestCount++; + String jsonString = "{\"request\":\""+requestBody+ "\"}"; + exchange.request.setContent(jsonString.getBytes()); + + synchronized (exchange){ + // Mock GET (Request) + exchange.notify(); + mockSet.bridgeMock.doGet(exchange.request,exchange.response); + exchange.wait(); + + // handle OK (Data) + String data = exchange.response.getContentAsString(); + System.out.println(data + " of REQUEST-"+requestCount); + + } + } + } diff --git a/mispmock/src/core/MockSet.java b/mispmock/src/core/MockSet.java index a28f431..ea804b0 100644 --- a/mispmock/src/core/MockSet.java +++ b/mispmock/src/core/MockSet.java @@ -6,8 +6,8 @@ import core.BridgeMock; import core.ClientMock; public class MockSet { - UserMock userMock; - BridgeMock bridgeMock; - ClientMock clientMock; - AppMock appMock; + public UserMock userMock; + public BridgeMock bridgeMock; + public ClientMock clientMock; + public AppMock appMock; } \ No newline at end of file