/**
 * Os class works as an operating system for inanimate objects like planes, 
 * robots, etc.
 * CSCE 155 Fall 2005
 * Assignment 1
 * @author
 * @version
 */

// import statements
import java.io.*;






public class Navigation {
    
    
    //-------------------------------------------------------------------------                              
   //Declare the constants
    private final int DEFAULT_HYPERDRIVE_MULTIPLIER = 1; //indicates the speed
                                                         //in terms of number of
                                                         //hyperdrives
    private final int DEFAULT_ATMOSPHERIC_SPEED = 1050;// km per hour
                                                       //indicates how fast
                                                       //this ship can go in the 
                                                       //atmosphere of a planet
    private final String DEFAULT_NAVIGATION_HARDWARE = "Microaxial LpL-449 computer system";
                                                       //name of the navigation controller
    private final String DEFAULT_ORIGIN = "TaTooine";
    private final String DEFAULT_DESTINATION = "Naboo";

    
    //-----------------------------------------------------------------------
    //private variables
    private int hyperdriveMultiplier; //the max speed in hyperdrive units
    private int atmosphericSpeed; //speed in the atmosphere of a planet
    private String navigationController;//name of the hardware that controls the
                                      //the navigation system
    private String origin;
    private String destination;
    
    
    public Navigation(){
        
        this.hyperdriveMultiplier = this.DEFAULT_HYPERDRIVE_MULTIPLIER;
        this.atmosphericSpeed = this.DEFAULT_ATMOSPHERIC_SPEED;
        this.navigationController = this.DEFAULT_NAVIGATION_HARDWARE;
        this.origin = this.DEFAULT_ORIGIN;
        this.destination  = this.DEFAULT_DESTINATION;
        
    }//end of constructor
    
    
    
    //-------------------------------------------------------------------------
    //Please Complete the following get and set methods
    //-------------------------------------------------------------------------
    
    
    public int getHyperdriveMultiplier() {
        return hyperdriveMultiplier;
    }

    public void setHyperdriveMultiplier(int hyperdriveMultiplier) {
        
    }

    public int getAtmosphericSpeed() {
        return atmosphericSpeed;
    }

    public void setAtmosphericSpeed(int atmosphericSpeed) {
        
    }

    public String getNavigationHardware() {
        
        return this.navigationController;
        
    }

    public void setNavigationHardware(String navigationController) {
        
        this.navigationController = navigationController;
    }
        
    public String getOrigin() {
        return origin;
    }
    
    public void setOrigin(String origin) {
        
    }
    
    public String getDestination() {
        return destination;
    }
    
    public void setDestination(String destination) {
        
    }

    

    // --------------------------------------------------------------------------
    // In the following, we will just have some "simulated" methods since you do
    // do not have enough background to actually implement the following
    // behavior.  Our simulation is simply to printout a statement "performing"
    // an action.  Use your imagination!
    // Hint!
    // 1. Prompt the user for origin
    // 2. Read and store the origin
    // 3. Prompt the user for destination
    // 4. Read and store the destination
    // 5. Print out the origin and destination and then print that the navigation
    //    system is functional
    // --------------------------------------------------------------------------
    public void Test(){
        
    }//end of Test
    
    
    
    
     /**
     * This method reads in a string and converts the string into an integer and
     * returns that integer to the caller of this method.
     */    
    private int readInteger()  {
        
        String userInput = "";
        int temp = 0;
        
        BufferedReader stdin =
                new BufferedReader(new InputStreamReader(System.in), 1);
        
        try {
            userInput = stdin.readLine();
            temp = Integer.parseInt(userInput);  // convert to integer
        }  catch (IOException ex) {
            System.out.println(ex);
        }
        
        return temp;
        
    }  // end readInteger
    
    
    
    
    /**
     * This method reads in a string and returns that string to the caller of
     * this method.
     */
    
    private String readString()  {
        
        String userInput = "";
        
        BufferedReader stdin =
                new BufferedReader(new InputStreamReader(System.in), 1);
        try {
            userInput = stdin.readLine();
        }  catch (IOException ex) {
            System.out.println(ex);
        }
        
        return userInput;
        
    }  // end readString


    
    
    
}//end of class Navigation

