SHARE
TWEET

Untitled

a guest Aug 22nd, 2019 83 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. //package cal;
  2.  
  3. import java.rmi.registry.LocateRegistry;
  4. import java.rmi.registry.Registry;
  5. import java.io.*;
  6. import java.util.*;
  7.  
  8. import static java.lang.System.*;
  9.  
  10. public class CalculatorClient {
  11.  
  12.     private CalculatorClient() {}
  13.  
  14.     public static void main(String[] args) {
  15.  
  16.         String host = (args.length < 1) ? null : args[0];
  17.        
  18.         try {
  19.  
  20.             Registry registry = LocateRegistry.getRegistry(host);
  21.             Calculator stub = (Calculator) registry.lookup("Calculator");
  22.  
  23.  
  24.             //this section is going to try open a testing file (if found) and execute it
  25.             try (BufferedReader br = new BufferedReader(new FileReader("test.txt"))) {
  26.                
  27.                 String line;
  28.                 String token;
  29.                 int value;
  30.                 int response;
  31.                 boolean empty;
  32.  
  33.                 //reading line by line
  34.                 while ((line = br.readLine()) != null) {
  35.                    
  36.                     StringTokenizer tokenizer = new StringTokenizer(line);
  37.  
  38.                     while(tokenizer.hasMoreToken()) {
  39.  
  40.                         token = tokenizer.nextToken();
  41.                         if(token == "+" ||token == "/" || token == "-" || token == "*") {
  42.  
  43.                             stub.pushOperator(token);
  44.                         }
  45.  
  46.                         else if(token == "pop") {
  47.  
  48.                             response = stub.pop();
  49.                             System.out.println(response);
  50.  
  51.                         }
  52.                         else if(token == "delay") {
  53.  
  54.                             token = tokenizer.nextToken();
  55.                             value = Integer.parseInt(token);
  56.                             stub.delayPop(value);
  57.                         }
  58.                         else if(token == "empty") {
  59.  
  60.                             empty = stub.isEmpty();
  61.                             System.out.println(empty);  
  62.  
  63.                         }
  64.                         else {
  65.  
  66.                             try{
  67.                                 //check if the token is a integer
  68.                               int num = Integer.parseInt(token);
  69.                               stub.pushValue(num);
  70.  
  71.                             } catch (NumberFormatException error) {
  72.                               System.err.println("wrong input");
  73.                             }
  74.                         }
  75.  
  76.                     }
  77.                     //end of line is reached, so pop everything
  78.                     response = stub.pop();
  79.                     System.out.println(response);
  80.  
  81.                 }
  82.             br.close();
  83.             } catch(IOException error) {
  84.                 System.err.println("File not found");
  85.             }
  86.  
  87.         } catch (Exception error) {
  88.             System.err.println("Client exception: " + error.toString());
  89.             error.printStackTrace();
  90.         }
  91.     }
  92. }
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
Not a member of Pastebin yet?
Sign Up, it unlocks many cool features!
 
Top