private void mainMenu() {
		stdin = new BufferedReader (new InputStreamReader(System.in));
		
		try {
			System.out.println("Welcome to the Smart Home Monitoring System");
			System.out.println("Please select an option:");
			System.out.println("1. View Log - temperature adjustment");
			System.out.println("2. View media Files");
			System.out.println("3. View disc tracks");
			System.out.println("E. Exit");		
			System.out.flush();
			
			input = stdin.readLine().trim();
			
			// based on input, trigger different functions
			switch(input){
			case "1": viewLog();
				break;
			case "2": viewMediaFiles();
				break;
			case "3": viewDiscTracks();
				break;
			case "E": exit();
				break;
			// I'll be case insensitive here and take "e" as an legal input
			case "e": exit();
				break;
			default: System.out.println("Invalid command");
				System.out.println(1 );
				break;
			}

		} catch (IOException e) {
			e.printStackTrace();
		}
		
		// always go back to main menu, the ENTER to return is implemented in each of the functions
		mainMenu();
	}