diff --git a/config/checkstyle/checkstyle.xml b/config/checkstyle/checkstyle.xml
index 14b27ec5e16..24eaeb44965 100644
--- a/config/checkstyle/checkstyle.xml
+++ b/config/checkstyle/checkstyle.xml
@@ -1,7 +1,7 @@
+ "-//Checkstyle//DTD Checkstyle Configuration 1.3//EN"
+ "https://checkstyle.org/dtds/configuration_1_3.dtd">
-
-
-
-
+
+
+
+
+ value="fall through|Fall through|fallthru|Fallthru|falls through|Falls through|fallthrough|Fallthrough|No break|NO break|no break|continue on"/>
diff --git a/src/main/java/igrad/logic/LogicManager.java b/src/main/java/igrad/logic/LogicManager.java
index 02e1021ed84..eb0a8790ce3 100644
--- a/src/main/java/igrad/logic/LogicManager.java
+++ b/src/main/java/igrad/logic/LogicManager.java
@@ -83,7 +83,7 @@ public CommandResult execute(String commandText) throws CommandException,
CommandResult commandResult;
Command command = courseBookParser.parseCommand(commandText);
- if (command.getClass() != UndoCommand.class) {
+ if (!(command instanceof UndoCommand)) {
try {
// First, load current state into backup
storage.saveBackupCourseBook(model.getCourseBook());
diff --git a/src/main/java/igrad/logic/commands/UndoCommand.java b/src/main/java/igrad/logic/commands/UndoCommand.java
index 5df1eec7b77..e84e0049fa9 100644
--- a/src/main/java/igrad/logic/commands/UndoCommand.java
+++ b/src/main/java/igrad/logic/commands/UndoCommand.java
@@ -18,8 +18,8 @@ public class UndoCommand extends Command {
public static final String MESSAGE_USAGE = COMMAND_WORD + ": Undoes latest action.\n"
+ "Example: " + COMMAND_WORD;
- public static final String SHOWING_UNDO_MESSAGE = "Undid last command.";
- public static final String UNDO_ERROR_MESSAGE = "Unable to undo the last comamand.";
+ public static final String MESSAGE_SUCCESS = "Undid last command.";
+ public static final String MESSAGE_ERROR = "Unable to undo the last comamand.";
@Override
public CommandResult execute(Model model) throws CommandException {
@@ -35,13 +35,13 @@ public CommandResult execute(Model model) throws CommandException {
if (backupCourseBook.isPresent()) {
model.setCourseBook(backupCourseBook.get());
} else {
- throw new CommandException(UNDO_ERROR_MESSAGE);
+ throw new CommandException(MESSAGE_ERROR);
}
} catch (DataConversionException e) {
- throw new CommandException(UNDO_ERROR_MESSAGE);
+ throw new CommandException(MESSAGE_ERROR);
}
- return new CommandResult(SHOWING_UNDO_MESSAGE, false, false, false);
+ return new CommandResult(MESSAGE_SUCCESS, false, false, false);
}
}
diff --git a/src/main/java/igrad/model/UserPrefs.java b/src/main/java/igrad/model/UserPrefs.java
index af5f0b75e2d..f1ed934401f 100644
--- a/src/main/java/igrad/model/UserPrefs.java
+++ b/src/main/java/igrad/model/UserPrefs.java
@@ -40,6 +40,7 @@ public void resetData(ReadOnlyUserPrefs newUserPrefs) {
requireNonNull(newUserPrefs);
setGuiSettings(newUserPrefs.getGuiSettings());
setCourseBookFilePath(newUserPrefs.getCourseBookFilePath());
+ setBackupCourseBookFilePath(newUserPrefs.getBackupCourseBookFilePath());
setAvatar(newUserPrefs.getAvatar());
}
@@ -66,6 +67,11 @@ public void setCourseBookFilePath(Path courseBookFilePath) {
this.courseBookFilePath = courseBookFilePath;
}
+ public void setBackupCourseBookFilePath(Path backupCourseBookFilePath) {
+ requireNonNull(backupCourseBookFilePath);
+ this.backupCourseBookFilePath = backupCourseBookFilePath;
+ }
+
public Avatar getAvatar() {
return avatar;
}
@@ -88,6 +94,7 @@ public boolean equals(Object other) {
return guiSettings.equals(o.guiSettings)
&& courseBookFilePath.equals(o.courseBookFilePath)
+ && backupCourseBookFilePath.equals(o.backupCourseBookFilePath)
&& avatar.equals(o.avatar);
}
@@ -101,6 +108,7 @@ public String toString() {
StringBuilder sb = new StringBuilder();
sb.append("Gui Settings : " + guiSettings);
sb.append("\nLocal data file location : " + courseBookFilePath);
+ sb.append("\nBackup Local data file location : " + backupCourseBookFilePath);
sb.append("\nAvatar : " + avatar);
return sb.toString();
}
diff --git a/src/main/java/igrad/model/util/SampleDataUtil.java b/src/main/java/igrad/model/util/SampleDataUtil.java
index 945dff55213..e60c9649f4c 100644
--- a/src/main/java/igrad/model/util/SampleDataUtil.java
+++ b/src/main/java/igrad/model/util/SampleDataUtil.java
@@ -53,6 +53,10 @@ public static Path getSampleCourseBookFilePath() {
return Paths.get("data", "coursebook.json");
}
+ public static Path getSampleBackupCourseBookFilePath() {
+ return Paths.get("data", "backup_coursebook.json");
+ }
+
public static ReadOnlyCourseBook getSampleCourseBook() {
CourseBook sampleCourseBook = new CourseBook();
for (Module sampleModule : getSamplePersons()) {
@@ -71,6 +75,7 @@ public static UserPrefs getSampleUserPrefs() {
sampleUserPrefs.setGuiSettings(new GuiSettings());
sampleUserPrefs.setCourseBookFilePath(getSampleCourseBookFilePath());
+ sampleUserPrefs.setBackupCourseBookFilePath(getSampleBackupCourseBookFilePath());
sampleUserPrefs.setAvatar(getSampleAvatar());
return sampleUserPrefs;
diff --git a/src/main/resources/view/MainWindow.fxml b/src/main/resources/view/MainWindow.fxml
index 3298cc6f36a..127db97cb7d 100644
--- a/src/main/resources/view/MainWindow.fxml
+++ b/src/main/resources/view/MainWindow.fxml
@@ -13,7 +13,7 @@
-
+