Skip to content
Snippets Groups Projects
Commit 2fc45134 authored by Jan Kožusznik's avatar Jan Kožusznik
Browse files

code: refactor

parent 079ddc4f
Branches
No related tags found
No related merge requests found
...@@ -39,6 +39,9 @@ public class MidlewareTunnel implements Closeable { ...@@ -39,6 +39,9 @@ public class MidlewareTunnel implements Closeable {
} }
public void open(int port) throws UnknownHostException, IOException { public void open(int port) throws UnknownHostException, IOException {
if(ss != null) {
throw new IllegalStateException();
}
ss = new ServerSocket(0, 50, InetAddress.getByName("localhost")); ss = new ServerSocket(0, 50, InetAddress.getByName("localhost"));
ss.setSoTimeout(TIMEOUT); ss.setSoTimeout(TIMEOUT);
...@@ -48,7 +51,7 @@ public class MidlewareTunnel implements Closeable { ...@@ -48,7 +51,7 @@ public class MidlewareTunnel implements Closeable {
public void run() { public void run() {
while (!Thread.interrupted() && !ss.isClosed()) { while (!Thread.interrupted() && !ss.isClosed()) {
try (Socket soc = ss.accept()) { try (Socket soc = ss.accept()) {
doTransfer(soc); doTransfer(soc, port);
} catch (SocketTimeoutException e) { } catch (SocketTimeoutException e) {
// ignore and check interruption // ignore and check interruption
} catch (IOException e) { } catch (IOException e) {
...@@ -58,32 +61,6 @@ public class MidlewareTunnel implements Closeable { ...@@ -58,32 +61,6 @@ public class MidlewareTunnel implements Closeable {
} }
} }
private void doTransfer(Socket soc) {
TestCommunicationWithNodes.log.info("START: doTransfer");
Thread helpingThread = new Thread() {
@Override
public void run() {
readFromMiddleware(soc);
}
};
DataTransferMethodExt transfer = dataTransfer.getDataTransferMethod(ipAddress, port, jobId,
sessionCode);
helpingThread.start();
sendToMiddleware(soc);
TestCommunicationWithNodes.log.info("endDataTransfer");
dataTransfer.endDataTransfer(transfer, sessionCode);
TestCommunicationWithNodes.log.info("endDataTransfer - DONE");
helpingThread.interrupt();
try {
helpingThread.join();
} catch (InterruptedException e) {
Thread.currentThread().interrupt();
}
TestCommunicationWithNodes.log.info("END: doTransfer");
}
}; };
thread.start(); thread.start();
} }
...@@ -107,6 +84,32 @@ public class MidlewareTunnel implements Closeable { ...@@ -107,6 +84,32 @@ public class MidlewareTunnel implements Closeable {
return ss.getLocalPort(); return ss.getLocalPort();
} }
private void doTransfer(Socket soc, int port) {
TestCommunicationWithNodes.log.info("START: doTransfer");
Thread helpingThread = new Thread() {
@Override
public void run() {
readFromMiddleware(soc);
}
};
DataTransferMethodExt transfer = dataTransfer.getDataTransferMethod(ipAddress, port, jobId,
sessionCode);
helpingThread.start();
sendToMiddleware(soc);
TestCommunicationWithNodes.log.info("endDataTransfer");
dataTransfer.endDataTransfer(transfer, sessionCode);
TestCommunicationWithNodes.log.info("endDataTransfer - DONE");
helpingThread.interrupt();
try {
helpingThread.join();
} catch (InterruptedException e) {
Thread.currentThread().interrupt();
}
TestCommunicationWithNodes.log.info("END: doTransfer");
}
private void sendToMiddleware(Socket soc) { private void sendToMiddleware(Socket soc) {
TestCommunicationWithNodes.log.info("START: sendToMiddleware"); TestCommunicationWithNodes.log.info("START: sendToMiddleware");
try { try {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment