Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //libraries are imported
- import java.io.BufferedReader;
- import java.io.IOException;
- import java.io.InputStreamReader;
- import java.io.PrintWriter;
- import java.net.ServerSocket;
- import java.net.Socket;
- public class Server1
- {
- public static void main(String[] args) throws Exception
- {
- //socket for server is created
- ServerSocket messageSocket1 = null, messageSocket2 = null;
- //Try to set IPv4 instead of 6 and initialize serverSocket to port 5555(this port can be changed if so desired)
- try
- {
- System.setProperty("java.net.preferIPv4Stack", "true");
- messageSocket1 = new ServerSocket(5555,1);
- messageSocket2 = new ServerSocket(5556,1);
- }
- //catch if couldn't initialize serverSocket on port 5555, tell user and quit program
- catch (IOException e)
- {
- System.out.println("Couldn't listen on port 5555/5556 Check port");
- System.exit(-1);
- }
- //create socket for client
- Socket inSocket1 = null;
- Socket inSocket2 = null;
- //infinite while loop keeps program running until told to quit
- while(true)
- {
- System.out.println("Looking for clients");
- //try to connect server socket to client socket
- try
- {
- inSocket1 = messageSocket1.accept();
- inSocket2 = messageSocket2.accept();
- }
- //catch if can't connect, tell user and quit program
- catch (IOException e)
- {
- System.out.println("didn't find client, check port/client program");
- System.exit(-1);
- }
- //in takes in the user input from the user
- System.out.println("Connection to clients made");
- BufferedReader in1 = new BufferedReader(new InputStreamReader(inSocket1.getInputStream()));
- BufferedReader in2 = new BufferedReader(new InputStreamReader(inSocket2.getInputStream()));
- //out sends user input to the client
- PrintWriter out1 = new PrintWriter(inSocket1.getOutputStream(),true);
- PrintWriter out2 = new PrintWriter(inSocket2.getOutputStream(),true);
- //String takes input from in
- String userInput1 = "";
- String userInput2 = "";
- //while user does not type "exit"
- while(true)
- {
- //userInput from client1
- if(userInput1.equals("Client 1: quit")||userInput2.equals("Client 2: quit"))
- {
- //close all sockets
- out1.close();
- in1.close();
- messageSocket1.close();
- inSocket1.close();
- out2.close();
- in2.close();
- messageSocket2.close();
- inSocket2.close();
- System.exit(0);
- }
- userInput1 = in1.readLine();
- //sned message to client2
- out2.println(userInput1);
- //userinput from client2
- userInput2 = in2.readLine();
- //send the message to the client1
- out1.println(userInput2);
- }
- }
- }
- }
- import java.io.BufferedReader;
- import java.io.IOException;
- import java.io.InputStreamReader;
- import java.io.PrintWriter;
- import java.net.Socket;
- import java.util.Scanner;
- public class Client1
- {
- public static void main(String args[]) throws IOException
- {
- Socket messageSocket = null;
- PrintWriter out = null;
- BufferedReader in = null;
- try
- {
- //get program to use IPv4 instead of 6
- System.setProperty("java.net.preferIPv4Stack", "true");
- messageSocket = new Socket("localhost", 5555);
- out = new PrintWriter(messageSocket.getOutputStream(), true);
- in = new BufferedReader(new InputStreamReader(messageSocket.getInputStream()));
- }
- catch (IOException e)
- {
- System.out.println("can't open socket on 5555");
- System.exit(-1);
- }
- Scanner keyboard = new Scanner(System.in);
- System.out.println("Enter your message. type quit to exit");
- String message = ("Client 1: "+keyboard.nextLine());
- while(true)
- {
- if(message.contains("quit"))
- {
- System.exit(0);
- }
- out.println(message);
- System.out.println(in.readLine());
- System.out.print("you: ");
- message = ("Client 1: "+keyboard.next());
- }
- }
- }
- import java.io.BufferedReader;
- import java.io.IOException;
- import java.io.InputStreamReader;
- import java.io.PrintWriter;
- import java.net.Socket;
- import java.util.Scanner;
- public class Client2
- {
- public static void main(String args[]) throws IOException
- {
- Socket messageSocket = null;
- PrintWriter out = null;
- BufferedReader in = null;
- try
- {
- //get program to use IPv4 instead of 6
- System.setProperty("java.net.preferIPv4Stack", "true");
- messageSocket = new Socket("localhost", 5556);
- out = new PrintWriter(messageSocket.getOutputStream(), true);
- in = new BufferedReader(new InputStreamReader(messageSocket.getInputStream()));
- }
- catch (IOException e)
- {
- System.out.println("can't open socket on 5555");
- System.exit(-1);
- }
- Scanner keyboard = new Scanner(System.in);
- String message = "";
- while(true)
- {
- if(message.contains("quit"))
- {
- System.exit(0);
- }
- System.out.println(in.readLine());
- System.out.print("you: ");
- message = ("Client 2: "+keyboard.nextLine());
- out.println(message);
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement