diff options
| author | Craig Tuschhoff <tuschhcm@gmail.com> | 2012-10-19 23:25:19 -0700 | 
|---|---|---|
| committer | Craig Tuschhoff <tuschhcm@gmail.com> | 2012-10-19 23:25:19 -0700 | 
| commit | c2713d235552ff99066da868dd30c27fba79949b (patch) | |
| tree | 8e4c0e474a4e40eeb1efd2dfe47d8936f75e207f /src | |
| parent | e5a452bae423dee7b113acf224cd0af655a297ee (diff) | |
completed consoleui.java
Diffstat (limited to 'src')
| -rw-r--r-- | src/net/tuschhcm/routercontrol/ui/ConsoleUI.java | 62 | 
1 files changed, 53 insertions, 9 deletions
| diff --git a/src/net/tuschhcm/routercontrol/ui/ConsoleUI.java b/src/net/tuschhcm/routercontrol/ui/ConsoleUI.java index 51b3728..9ac1c81 100644 --- a/src/net/tuschhcm/routercontrol/ui/ConsoleUI.java +++ b/src/net/tuschhcm/routercontrol/ui/ConsoleUI.java @@ -1,7 +1,17 @@  package net.tuschhcm.routercontrol.ui;
 +import java.util.Scanner;
 +
  public class ConsoleUI implements UserInterface {
 +	private Action mPresetSelectedAction;
 +	
 +	private Action mLockSetAction;
 +	
 +	private boolean mLocked;
 +	
 +	private int mLastPreset;
 +	
      @Override
      public void addPreset(int number, final String name) {
          // TODO Auto-generated method stub
 @@ -10,35 +20,69 @@ public class ConsoleUI implements UserInterface {      @Override
      public void setPresetSelectionAction(final Action action) {
 -        // TODO Auto-generated method stub
 -        
 +    	mPresetSelectedAction = action;
      }
      @Override
      public int getSelectedPreset() {
 -        // TODO Auto-generated method stub
 -        return 0;
 +        return mLastPreset;
      }
      @Override
      public void run() {
 -        // TODO Auto-generated method stub
 +    	Scanner keyboard = new Scanner(System.in);
 +    	String userInput;
 +    	boolean running = true;
 +    	
 +    	System.out.println("Welcome to Router Control!");
 +        System.out.println("--------------------------");
 +        System.out.println("Available commands: \nLock: Locks/unlocks the physical controls" +
 +        		"on the router\nExit: Exits the application");
 +        
 +        do{
 +        
 +        	System.out.print("\nEnter a command or preset number: ");
 +        	userInput = keyboard.next();
 +        
 +        
 +        	if(userInput.equalsIgnoreCase("exit")){
 +            	//TODO: Implement and call exit method from switcherApp
 +           
 +            } else if(userInput.equalsIgnoreCase("lock")){
 +            	mLocked = !mLocked;
 +            	mLockSetAction.onAction();
 +            	if(mLocked){
 +            		System.out.println("Physical Controls are Locked.");
 +            	} else {
 +            		System.out.println("Physical Controls are Unlocked");
 +            	}
 +            
 +            } else {
 +            	try{
 +            		mLastPreset = Integer.valueOf(userInput);
 +            		mPresetSelectedAction.onAction();
 +            	} catch (final NumberFormatException nfe){
 +            		System.out.println("ERROR: Invalid Entry");
 +            	}
 +            }
 +        }while(running);
 +        
 +       keyboard.close();
      }
      @Override
      public void setToggleControlLockAction(final Action action) {
 -        // TODO Auto-generated method stub
 +        mLockSetAction = action;
      }
      @Override
      public boolean getControlLockStatus() {
 -        // TODO Auto-generated method stub
 -        return false;
 +        return mLocked;
      }
      @Override
      public void setControlLockStatus(boolean enabled) {
 -        // TODO Auto-generated method stub
 +        mLocked = enabled;
      }
  }
 | 
