All pastes #976754 Raw Edit

Miscellany

public text v1 · immutable
·published 2008-04-08 12:21 UTC
rendered paste body
import java.util.*;

public class LookOutApp {
	public static Scanner sn = new Scanner(System.in);

	public static int menu() {
		System.out.println("1. Print Summary of all tasks" + '\n'
				+ "2. Print Description and Deadline of next task" + '\n'
				+ "3. Remove next task" + '\n' + "4. Add task to list" + '\n'
				+ "5. Save data" + '\n' + "6. Restore from disk" + '\n'
				+ "7. Quit");
		int input = 0;
		do {
			System.out.println("Enter option 1-7");
			input = sn.nextInt();
		} while (input < 1 || input > 7);
		return input;

	}

	public static void main(String[] args) {
		boolean runApp = true;
		int input = 0;
		TaskList tasks;
		System.out
				.println("Please select a task list structure" + '\n'
						+ "1. Stack" + '\n' + "2. FIFO" + '\n'
						+ "3. Priority Sequence");
		do {
			System.out.println("Enter a number 1-3");
			input = sn.nextInt();
		} while (input != 1 && input != 2 && input != 3);
		if (input == 1)
			tasks = new TaskStack();
		else if (input == 2)
			tasks = new TaskFifo();
		else
			tasks = new TaskPrioritySequence();
		do {
			switch (menu()) {
			case 1:
				if (tasks.isEmpty()) {
					System.out.println("No tasks currently in list");
				} else {
					Task[] temp = tasks.allTasks();
					for (int i = 0; i < temp.length-1; i++) {
						System.out.println(temp[i].toString());
					}
				}
				break;
			case 2:
				if (tasks.isEmpty()) {
					System.out.println("No tasks currently in list");
				} else {
					System.out.println(tasks.nextTask().toString());
				}

				break;
			case 3:
				if (tasks.isEmpty()) {
					System.out.println("No tasks currently in list");
				} else {
					tasks.removeNextTask();
				}
				break;
			case 4:
				System.out.println("Please give a task description");
				String description = sn.next();
				String strIn;
				SimpleDate deadline;
				Task task;
				do {
					System.out.println("Enter y if you want a deadline or n if you do not.");
					strIn = sn.next();
				} while (strIn.compareToIgnoreCase("y") != 0
						&& strIn.compareToIgnoreCase("n") != 0);
				if (strIn.compareToIgnoreCase("y") == 0) {
					do {
						System.out.println("Enter valid year");
						int year = sn.nextInt();
						System.out.println("Enter valid month");
						int month = sn.nextInt();
						System.out.println("Enter valid day");
						int day = sn.nextInt();
						deadline = new SimpleDate(year, month, day);
					} while (deadline.isValid() != true);
					task=new Task(description,deadline);

				}
				else
					task=new Task(description);

				tasks.addTask(task);
				break;
			case 5:
				System.out.println("Please enter a file name.");
				TaskUtility.saveTasksToFile(sn.next(), tasks.allTasks());
				if (TaskUtility.saveTasksToFile(sn.next(), tasks.allTasks()))
					System.out.println("Save successful");
				else
					System.out.println("Save not successful");
				break;
			case 6:
				System.out.println("Please enter a file name.");
				Task[] temp = TaskUtility.readTasksFromFile(sn.next());
				if (temp == null)
					System.out.println("Save not successful");
				else
					tasks.initWithTasks(temp);
				break;
			case 7:
				runApp = false;
				break;

			}

		} while (runApp);

	}
}