+ bridge receives request data.

pull/1/head
Ivan Olexyn 5 years ago
parent 7e137ef10c
commit 1555b516db

@ -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);

@ -18,7 +18,6 @@ public abstract class ActorRunnable implements Runnable {
List<ExchangeMock> exchanges = new ArrayList<>();
List<HttpServletRequest> 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);
}
}

@ -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,8 +23,16 @@ public class UserMock extends ActorRunnable {
@Override
public void run() {
while (true){
try {
Thread.sleep(1000);
sendGetRequest();
} catch (IOException | InterruptedException e) {
e.printStackTrace();
}
}
}
@Override
void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException {
@ -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);
}
}
}

@ -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;
}
Loading…
Cancel
Save