Client Supported Commands Server Reaction and response Add: x where x can be any integer value (e.g., Add: 74) 1- Add x to the inputValues list 2- Respond with “added successfully” Remove: x where x can be any integer value (e.g., Remove: 2) 1- Remove

profileadelen
 (Not rated)
 (Not rated)
Chat

 

Client Supported Commands Server Reaction and response   Add: x where x can be any integer value (e.g., Add: 74) 1- Add x to the inputValues list 2- Respond with “added successfully”   Remove: x where x can be any integer value (e.g., Remove: 2) 1- Remove all occurrences x from the inputValues list 2- Respond with “removed

 

  Client Supported Commands Server Reaction and response   Add: x where x can be any integer value (e.g., Add: 74) 1- Add x to the inputValues list 2- Respond with “added successfully”   Remove: x where x can be any integer value (e.g., Remove: 2) 1- Remove all occurrences x from the inputValues list 2- Respond with “removed successfully”   Get_Summation 1- Calculate the summation of values in the inputValues list 2- Respond with “The summation is x” where x is the summation of all values in the list. If empty list or all elements are zeros, x in the message equals null   Get_Minimum 1- Search for the minimum number in the inputValues list 2- Respond with “The minimum is x” where x is the minimum value in the list. If empty list or all elements are zeros, x in the message equals null   Get_Maximum 1- Search for the maximum number in the inputValues list 2- Respond with “The maximum is x” where x is the maximum value in the list. If empty list or all elements are zeros, x in the message equals null    

Exit. This is the only command that terminates the interactive communication.

No action or response required    

JAVA PROGRAM. 

import java.io.*;
import java.net.*;

class Server {

   public static void main(String args[]) {
        try {

           // Create server Socket that listens/bonds to port/endpoint address 6666 (any port id of your choice, should be >=1024, as other port addresses are reserved for system use)
            // The default maximum number of queued incoming connections is 50 (the maximum number of clients to connect to this server)
            // There is another constructor that can be used to specify the maximum number of connections
            ServerSocket mySocket = new ServerSocket(6666);

            System.out.println("Startup the server side over port 6666 ....");

           // use the created ServerSocket and accept() to start listening for incoming client requests targeting this server and this port
            // accept() blocks the current thread (server application) waiting until a connection is requested by a client.
            // the created connection with a client is represented by the returned Socket object.
            Socket connectedClient = mySocket.accept();
 

           // reaching this point means that a client established a connection with your server and this particular port.
            System.out.println("Connection established");

            // to interact (read incoming data / send data) with the connected client, we need to create the following:

           // BufferReader object to read data coming from the client
            BufferedReader br = new BufferedReader(new InputStreamReader(connectedClient.getInputStream()));

           // PrintStream object to send data to the connected client
            PrintStream ps = new PrintStream(connectedClient.getOutputStream());

            // Let's keep reading data from the client, as long as the client does't send "exit".
            String inputData;
            while (!(inputData = br.readLine()).equals("exit")) {    
 

                System.out.println("received a message from client: " + inputData);   //print the incoming data from the client

               ps.println("Here is an acknowledgement from the server");              //respond back to the client
 

            }
 

            System.out.println("Closing the connection and the sockets");

           // close the input/output streams and the created client/server sockets
            ps.close();
            br.close();
            mySocket.close();
            connectedClient.close();

       } catch (Exception exc) {
            System.out.println("Error :" + exc.toString());
        }

   }
} /*********************************/

import java.io.*;
import java.net.*;
import java.util.Scanner;

class Client {

   public static void main(String args[]) {
        try {
 

            // Create client socket to connect to certain server (Server IP, Port address)
            // we use either "localhost" or "127.0.0.1" if the server runs on the same device as the client
            Socket mySocket = new Socket("127.0.0.1", 6666);

            // to interact (send data / read incoming data) with the server, we need to create the following:
 

            //DataOutputStream object to send data through the socket
            DataOutputStream outStream = new DataOutputStream(mySocket.getOutputStream());

           // BufferReader object to read data coming from the server through the socket
            BufferedReader inStream = new BufferedReader(new InputStreamReader(mySocket.getInputStream()));

            String statement = "";
            Scanner in = new Scanner(System.in);
 

            while(!statement.equals("exit")) {
 

                statement = in.nextLine();              // read user input from the terminal data to the server
 

                outStream.writeBytes(statement+"\n");        // send such input data to the server

                String str = inStream.readLine();         // receive response from server

               System.out.println(str);                // print this response
 

            }

           System.out.println("Closing the connection and the sockets");
 

            // close connection.
            outStream.close();
            inStream.close();
            mySocket.close();
 

        } catch (Exception exc) {
            System.out.println("Error is : " + exc.toString());

       }
    }
}

    • 2 years ago
    java attached
    NOT RATED

    Purchase the answer to view it

    blurred-text