m-chrzan.xyz
aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/pl/edu/mimuw/cloudatlas/agent/modules/UDUP.java
diff options
context:
space:
mode:
authorMagdalena GrodziƄska <mag.grodzinska@gmail.com>2020-01-10 18:42:22 +0100
committerGitHub <noreply@github.com>2020-01-10 18:42:22 +0100
commit1b28c8a208c510183479e090f7b8c32f9dadd7c2 (patch)
treef7fb5f8a0ef797307e507107263c8394d9248bc7 /src/main/java/pl/edu/mimuw/cloudatlas/agent/modules/UDUP.java
parent3e3677a34ab63d05cbc7a3c45dca98a47fbac77f (diff)
parentad872a25f94f6297a659cf945c4e1547ed8f28d7 (diff)
Merge pull request #89 from m-chrzan/refactor_udup
Refactor udup
Diffstat (limited to 'src/main/java/pl/edu/mimuw/cloudatlas/agent/modules/UDUP.java')
-rw-r--r--src/main/java/pl/edu/mimuw/cloudatlas/agent/modules/UDUP.java31
1 files changed, 8 insertions, 23 deletions
diff --git a/src/main/java/pl/edu/mimuw/cloudatlas/agent/modules/UDUP.java b/src/main/java/pl/edu/mimuw/cloudatlas/agent/modules/UDUP.java
index 8c6db8f..e2243e1 100644
--- a/src/main/java/pl/edu/mimuw/cloudatlas/agent/modules/UDUP.java
+++ b/src/main/java/pl/edu/mimuw/cloudatlas/agent/modules/UDUP.java
@@ -23,30 +23,24 @@ import java.util.concurrent.atomic.AtomicBoolean;
* due to ValueContact design
*/
-// TODO set server port in global config - must be the same everywhere
-// TODO same with buffer size
-
-// TODO separate server like newapiimpl
// TODO add timestamps as close to sending as possible
// TODO wysylac tylko remotegossipgirl message
// TODO update timestampow odpowiedni w tym remotegossipgirlmessage
-public class UDUP extends Module implements Runnable {
+public class UDUP extends Module {
private UDUPClient client;
private UDUPServer server;
- private final AtomicBoolean running;
- public UDUP(InetAddress serverAddr,
- int serverPort,
+ public UDUP(int serverPort,
int timeout,
- int bufferSize) {
+ int bufferSize,
+ UDUPServer server) {
super(ModuleType.UDP);
- this.running = new AtomicBoolean(false);
try {
this.client = new UDUPClient(this, serverPort, bufferSize);
- this.server = new UDUPServer(this, serverAddr, serverPort, bufferSize);
- this.running.getAndSet(true);
+ this.server = server;
+ this.server.setUDUP(this);
} catch (SocketException e) {
e.printStackTrace();
this.client.close();
@@ -54,17 +48,8 @@ public class UDUP extends Module implements Runnable {
}
}
- public void run() {
- System.out.println("UDP server running");
- while(this.running.get()) {
- try {
- this.server.acceptMessage();
- } catch (IOException | InterruptedException e) {
- e.printStackTrace();
- this.running.getAndSet(false);
- this.server.close();
- }
- }
+ public UDUPServer getServer() {
+ return this.server;
}
public void handleTyped(UDUPMessage event) throws InterruptedException {