EX4A

You might also like

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 2

EX : 4A

IMPLEMENTATION OF APPLICATIONS THAT USE TCP AS NETWORK LAYER PROTOCOL:


//COUNT DOWN TIMER PROGRAM.
CLIENT PROGRAM:
import java.io.*;
import java.net.*;
import java.util.Scanner;
public class countclient {
public static void main(String[] args) {
int port = 9999;
try (Socket socket = new Socket("localhost",port);
BufferedReader reader = new BufferedReader(new
InputStreamReader(socket.getInputStream()));
PrintWriter writer = new PrintWriter(socket.getOutputStream(), true);
Scanner scanner = new Scanner(System.in)) {
System.out.print("Enter countdown duration (in seconds): ");
int duration = scanner.nextInt();
writer.println(duration);
String message;
while ((message = reader.readLine()) != null) {
System.out.println(message);
if (message.equals("Time's up!")) {
break;
}
}
} catch (IOException e) {
e.printStackTrace();
}
}
SERVER PROGRAM:
import java.io.*;
import java.net.*;
public class countserver {
public static void main(String[] args) {
int port = 9999;
try (ServerSocket serverSocket = new ServerSocket(port)) {
System.out.println("Server is listening on port " + port);
while (true) {
try (Socket clientSocket = serverSocket.accept();
BufferedReader reader = new BufferedReader(new
InputStreamReader(clientSocket.getInputStream()));
PrintWriter writer = new PrintWriter(clientSocket.getOutputStream(), true)) {
System.out.println("Client connected.");
int duration = Integer.parseInt(reader.readLine());
for (int i = duration; i >= 0; i--) {
writer.println("Time remaining: " + i + " seconds");
Thread.sleep(1000);
}
writer.println("Time's up!");
System.out.println("Countdown complete.");
} catch (InterruptedException e) {
e.printStackTrace();
}
}
} catch (IOException e) {
e.printStackTrace();
}
}
}

You might also like