keldon85

Command.java

Aug 24th, 2012
63
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.45 KB | None | 0 0
  1. package userInterface;
  2.  
  3. import java.util.StringTokenizer;
  4.  
  5. /*
  6.  * @Copyright QMUL Group A 2005-2006
  7.  */
  8. public class Command {
  9.     private String command;
  10.  
  11.     private String params[];
  12.  
  13.     public Command(String line) {
  14.         line = line.trim();
  15.  
  16.         command = getCommand(line).toLowerCase();
  17.         params = getParams(line);
  18.     }
  19.  
  20.     public boolean isValidCommand() {
  21.         return command.length() == 0;
  22.     }
  23.  
  24.     public String getCommand() {
  25.         return command;
  26.     }
  27.  
  28.     public int size() {
  29.         return params.length;
  30.     }
  31.  
  32.     public String get(int i) {
  33.         if ( i >= params.length | i < 0 ) return "";
  34.         return params[i];
  35.     }
  36.  
  37.     public static String getCommand(String line) {
  38.         line = line.trim();
  39.  
  40.         int i = line.indexOf(" ");
  41.         if (i < 0) {
  42.             return line;
  43.         } else {
  44.             return line.substring(0, i);
  45.         }
  46.  
  47.     }
  48.  
  49.     public static String[] getParams(String line) {
  50.         // skip past command
  51.         int i = line.indexOf(" ");
  52.         if (i < 0) {
  53.             return new String[0];
  54.         }
  55.  
  56.         line = line.substring(i + 1).trim();
  57.  
  58.         StringTokenizer st = new StringTokenizer(line, ",");
  59.         String params[] = new String[st.countTokens()];
  60.         int param_i = 0;
  61.         while (st.hasMoreTokens()) {
  62.             params[param_i++] = st.nextToken().trim();
  63.         }
  64.         return params;
  65.     }
  66.  
  67.     public String toString() {
  68.         String paramsStr = "";
  69.         for (int i = 0; i < params.length; i++) {
  70.             if (i > 0) {
  71.                 paramsStr = paramsStr + ", ";
  72.             }
  73.             paramsStr = paramsStr + params[i];
  74.         }
  75.         return command + " " + paramsStr;
  76.     }
  77. }
Advertisement
Add Comment
Please, Sign In to add comment