From 9ed9cc9de77697fd32da3eb06ed518de98c1234f Mon Sep 17 00:00:00 2001 From: Devesh Parmar <81907545+deveshparmar@users.noreply.github.com> Date: Tue, 4 Oct 2022 20:13:19 +0530 Subject: [PATCH 1/2] added Client.java --- .../SocketProgramming/Client.java | 108 ++++++++++++++++++ 1 file changed, 108 insertions(+) create mode 100644 Program's_Contributed_By_Contributors/Java_Programs/SocketProgramming/Client.java diff --git a/Program's_Contributed_By_Contributors/Java_Programs/SocketProgramming/Client.java b/Program's_Contributed_By_Contributors/Java_Programs/SocketProgramming/Client.java new file mode 100644 index 0000000000..bd8aef1fed --- /dev/null +++ b/Program's_Contributed_By_Contributors/Java_Programs/SocketProgramming/Client.java @@ -0,0 +1,108 @@ +import javax.swing.*; +import java.awt.*; +import java.io.BufferedReader; +import java.io.IOException; +import java.io.InputStreamReader; +import java.io.PrintWriter; +import java.net.Socket; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; + +public class Client extends JFrame{ + Socket socket; + BufferedReader reader; + PrintWriter writer; + + private JLabel jLabel = new JLabel("Client"); + private JTextArea messageArea = new JTextArea(); + private JButton button = new JButton("Send"); + private JTextField messageInput = new JTextField(); + private Font font = new Font("Ubuntu",Font.PLAIN,20); + + public Client() { + try { + makeGUI(); +// System.out.println("Sending request to server..."); +// socket = new Socket("127.0.0.1", 6666); +// System.out.println("Connection established"); +// +// reader = new BufferedReader(new InputStreamReader(socket.getInputStream())); +// writer = new PrintWriter(socket.getOutputStream()); +// +// read(); +// write(); + } catch (Exception e) { + e.printStackTrace(); + } + } + + private void makeGUI() { + this.setTitle("Client Messenger"); + this.setSize(800,700); + this.setLocationRelativeTo(null); + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + this.setVisible(true); + jLabel.setFont(font); + messageArea.setFont(font); + messageInput.setFont(font); + this.setLayout(new BorderLayout()); + this.add(jLabel,BorderLayout.NORTH); + this.add(messageArea,BorderLayout.CENTER); + this.add(messageInput,BorderLayout.SOUTH); + this.add(button,BorderLayout.SOUTH); + messageInput.setSize(60,60); + messageInput.setMargin(new Insets(5,10,5,10)); + jLabel.setHorizontalAlignment(SwingConstants.CENTER); + messageInput.setHorizontalAlignment(SwingConstants.LEFT); + var hm = new HashMap(); + hm.co + } + + private void write() { + Runnable runnable = () -> { + System.out.println("Writer started"); + try { + while (true) { + BufferedReader read = new BufferedReader(new InputStreamReader(System.in)); + String message = read.readLine(); + writer.println(message); + writer.flush(); + if(message.equals("exit")){ + socket.close(); + break; + } + } + + } catch (Exception e) { + System.out.println("Socket Connection terminated"); + } + System.out.println("Connection Closed"); + }; + new Thread(runnable).start(); + } + + private void read() { + Runnable runnable = () -> { + try { + while (!socket.isClosed()) { + String message = reader.readLine(); + if (message.equals("exit")) { + System.out.println("Server terminated the chat"); + socket.close(); + break; + } + System.out.println("Server - " + message); + } + } catch (IOException e) { + System.out.println("Socket Connection closed"); + } + }; + new Thread(runnable).start(); + } + + public static void main(String[] args) { + System.out.println("Client Started..."); + new Client(); + } +} From 6f5cb4634a924b7ced13fb3ff416123b11c6325c Mon Sep 17 00:00:00 2001 From: Devesh Parmar <81907545+deveshparmar@users.noreply.github.com> Date: Tue, 4 Oct 2022 20:14:06 +0530 Subject: [PATCH 2/2] added Server.java --- .../SocketProgramming/Server.java | 108 ++++++++++++++++++ 1 file changed, 108 insertions(+) create mode 100644 Program's_Contributed_By_Contributors/Java_Programs/SocketProgramming/Server.java diff --git a/Program's_Contributed_By_Contributors/Java_Programs/SocketProgramming/Server.java b/Program's_Contributed_By_Contributors/Java_Programs/SocketProgramming/Server.java new file mode 100644 index 0000000000..bd8aef1fed --- /dev/null +++ b/Program's_Contributed_By_Contributors/Java_Programs/SocketProgramming/Server.java @@ -0,0 +1,108 @@ +import javax.swing.*; +import java.awt.*; +import java.io.BufferedReader; +import java.io.IOException; +import java.io.InputStreamReader; +import java.io.PrintWriter; +import java.net.Socket; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; + +public class Client extends JFrame{ + Socket socket; + BufferedReader reader; + PrintWriter writer; + + private JLabel jLabel = new JLabel("Client"); + private JTextArea messageArea = new JTextArea(); + private JButton button = new JButton("Send"); + private JTextField messageInput = new JTextField(); + private Font font = new Font("Ubuntu",Font.PLAIN,20); + + public Client() { + try { + makeGUI(); +// System.out.println("Sending request to server..."); +// socket = new Socket("127.0.0.1", 6666); +// System.out.println("Connection established"); +// +// reader = new BufferedReader(new InputStreamReader(socket.getInputStream())); +// writer = new PrintWriter(socket.getOutputStream()); +// +// read(); +// write(); + } catch (Exception e) { + e.printStackTrace(); + } + } + + private void makeGUI() { + this.setTitle("Client Messenger"); + this.setSize(800,700); + this.setLocationRelativeTo(null); + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + this.setVisible(true); + jLabel.setFont(font); + messageArea.setFont(font); + messageInput.setFont(font); + this.setLayout(new BorderLayout()); + this.add(jLabel,BorderLayout.NORTH); + this.add(messageArea,BorderLayout.CENTER); + this.add(messageInput,BorderLayout.SOUTH); + this.add(button,BorderLayout.SOUTH); + messageInput.setSize(60,60); + messageInput.setMargin(new Insets(5,10,5,10)); + jLabel.setHorizontalAlignment(SwingConstants.CENTER); + messageInput.setHorizontalAlignment(SwingConstants.LEFT); + var hm = new HashMap(); + hm.co + } + + private void write() { + Runnable runnable = () -> { + System.out.println("Writer started"); + try { + while (true) { + BufferedReader read = new BufferedReader(new InputStreamReader(System.in)); + String message = read.readLine(); + writer.println(message); + writer.flush(); + if(message.equals("exit")){ + socket.close(); + break; + } + } + + } catch (Exception e) { + System.out.println("Socket Connection terminated"); + } + System.out.println("Connection Closed"); + }; + new Thread(runnable).start(); + } + + private void read() { + Runnable runnable = () -> { + try { + while (!socket.isClosed()) { + String message = reader.readLine(); + if (message.equals("exit")) { + System.out.println("Server terminated the chat"); + socket.close(); + break; + } + System.out.println("Server - " + message); + } + } catch (IOException e) { + System.out.println("Socket Connection closed"); + } + }; + new Thread(runnable).start(); + } + + public static void main(String[] args) { + System.out.println("Client Started..."); + new Client(); + } +}