diff --git a/src/main/java/vslab1/src/Main.java b/src/main/java/vslab1/src/Main.java index 41f1542..d0a30a1 100644 --- a/src/main/java/vslab1/src/Main.java +++ b/src/main/java/vslab1/src/Main.java @@ -11,11 +11,15 @@ import java.util.Scanner; import vslab1.src.FileReaderWriter.FileReaderWriter; import vslab1.src.Input.InputThread; import vslab1.src.Input.NetworkController; +import vslab1.src.Peers.EOnlineState; +import vslab1.src.Peers.Peer; import vslab1.src.Receiving.ReceiverThread; import vslab1.src.Receiving.ReceivingQueue; import vslab1.src.Request.RequestExecuterThread; import vslab1.src.Sending.SenderThread; import vslab1.src.Sending.SendingQueue; +import vslab1.src.Timeout.JobList; +import vslab1.src.Timeout.TimeoutThread; public class Main { public static void main(String[] args) { @@ -28,13 +32,17 @@ public class Main { SendingQueue sendingQueue = new SendingQueue(); ReceivingQueue receivingQueue = new ReceivingQueue(); - RequestExecuterThread requestExecuterThread = new RequestExecuterThread(sendingQueue, receivingQueue); + JobList jobList = new JobList(); + + TimeoutThread timeoutThread = new TimeoutThread(jobList); + timeoutThread.start(); + RequestExecuterThread requestExecuterThread = new RequestExecuterThread(sendingQueue, receivingQueue, jobList); requestExecuterThread.start(); ReceiverThread receiverThread = new ReceiverThread(datagramSocket, receivingQueue); receiverThread.start(); SenderThread senderThread = new SenderThread(datagramSocket, sendingQueue); senderThread.start(); - InputThread inputThread = new InputThread(inputScanner, senderThread, receiverThread, requestExecuterThread, sendingQueue); + InputThread inputThread = new InputThread(inputScanner, senderThread, receiverThread, requestExecuterThread, timeoutThread, sendingQueue, jobList); inputThread.start(); try { @@ -81,6 +89,7 @@ public class Main { receivedValidAndFreePort = true; } } + FileReaderWriter.updatePeer(new Peer(localIpAddress, localPort, null, EOnlineState.Online)); return datagramSocket; } } \ No newline at end of file