From 0da7696fa86ce197d44313a787d73533d1c4965c Mon Sep 17 00:00:00 2001 From: Yonggiee Date: Fri, 10 Apr 2020 21:40:13 +0800 Subject: [PATCH 1/2] add getValue() to Exercise classes to reduce sore eyes --- .../address/model/exercise/ExerciseDate.java | 4 ++++ .../address/model/exercise/ExerciseName.java | 4 ++++ .../address/model/exercise/ExerciseReps.java | 4 ++++ .../address/model/exercise/ExerciseSets.java | 4 ++++ .../model/exercise/ExerciseWeight.java | 4 ++++ .../model/exercise/UniqueExerciseList.java | 22 +++++++++---------- 6 files changed, 31 insertions(+), 11 deletions(-) diff --git a/src/main/java/seedu/address/model/exercise/ExerciseDate.java b/src/main/java/seedu/address/model/exercise/ExerciseDate.java index be6279351c0..d6f0a5ebedd 100644 --- a/src/main/java/seedu/address/model/exercise/ExerciseDate.java +++ b/src/main/java/seedu/address/model/exercise/ExerciseDate.java @@ -59,6 +59,10 @@ public long forPlot() { return value.toEpochDay(); } + public LocalDate getValue() { + return value; + } + @Override public String toString() { return this.value.format(DateTimeFormatter.ofPattern("dd-MM-yyyy")); diff --git a/src/main/java/seedu/address/model/exercise/ExerciseName.java b/src/main/java/seedu/address/model/exercise/ExerciseName.java index b187b7a7355..6cf42f96730 100644 --- a/src/main/java/seedu/address/model/exercise/ExerciseName.java +++ b/src/main/java/seedu/address/model/exercise/ExerciseName.java @@ -33,6 +33,10 @@ public static boolean isValidExerciseName(String test) { return test.matches(VALIDATION_REGEX); } + public String getValue() { + return value; + } + @Override public String toString() { return value; diff --git a/src/main/java/seedu/address/model/exercise/ExerciseReps.java b/src/main/java/seedu/address/model/exercise/ExerciseReps.java index 38281ed9df8..82690b2a04e 100644 --- a/src/main/java/seedu/address/model/exercise/ExerciseReps.java +++ b/src/main/java/seedu/address/model/exercise/ExerciseReps.java @@ -43,6 +43,10 @@ public int convertToInt() { return Integer.parseInt(value); } + public String getValue() { + return value; + } + @Override public String toString() { return value; diff --git a/src/main/java/seedu/address/model/exercise/ExerciseSets.java b/src/main/java/seedu/address/model/exercise/ExerciseSets.java index 39c3280f045..cff8de1931b 100644 --- a/src/main/java/seedu/address/model/exercise/ExerciseSets.java +++ b/src/main/java/seedu/address/model/exercise/ExerciseSets.java @@ -33,6 +33,10 @@ public static boolean isValidExerciseSets(String test) { return test.equals(EMPTY_STRING) || test.matches(VALIDATION_REGEX); } + public String getValue() { + return value; + } + @Override public String toString() { return value; diff --git a/src/main/java/seedu/address/model/exercise/ExerciseWeight.java b/src/main/java/seedu/address/model/exercise/ExerciseWeight.java index 3620deedb9b..d6634298827 100644 --- a/src/main/java/seedu/address/model/exercise/ExerciseWeight.java +++ b/src/main/java/seedu/address/model/exercise/ExerciseWeight.java @@ -43,6 +43,10 @@ public int convertToInt() { return Integer.parseInt(value); } + public String getValue() { + return value; + } + @Override public String toString() { return value; diff --git a/src/main/java/seedu/address/model/exercise/UniqueExerciseList.java b/src/main/java/seedu/address/model/exercise/UniqueExerciseList.java index 8334540ad69..2d224e40eaa 100644 --- a/src/main/java/seedu/address/model/exercise/UniqueExerciseList.java +++ b/src/main/java/seedu/address/model/exercise/UniqueExerciseList.java @@ -52,9 +52,9 @@ public boolean contains(Exercise toCheck) { public boolean containsNameWithinDate(ExerciseName toCheck, StartDate startDate, EndDate endDate) { requireNonNull(toCheck); return internalList.stream() - .filter(exercise -> (exercise.getExerciseDate().value.compareTo(startDate.value) >= 0)) - .filter(exercise -> (exercise.getExerciseDate().value.compareTo(endDate.value) <= 0)) - .anyMatch(exercise -> exercise.getExerciseName().value.equals(toCheck.value)); + .filter(exercise -> (exercise.getExerciseDate().getValue().compareTo(startDate.value) >= 0)) + .filter(exercise -> (exercise.getExerciseDate().getValue().compareTo(endDate.value) <= 0)) + .anyMatch(exercise -> exercise.getExerciseName().getValue().equals(toCheck.getValue())); } /** @@ -95,11 +95,11 @@ public void addToSorted(Exercise toAdd) { } int idx = 0; - LocalDate toAddDate = toAdd.getExerciseDate().value; - String toAddName = toAdd.getExerciseName().value.toLowerCase(); + LocalDate toAddDate = toAdd.getExerciseDate().getValue(); + String toAddName = toAdd.getExerciseName().getValue().toLowerCase(); for (Exercise curr : internalList) { - LocalDate currDate = curr.getExerciseDate().value; - String currName = curr.getExerciseName().value.toLowerCase(); + LocalDate currDate = curr.getExerciseDate().getValue(); + String currName = curr.getExerciseName().getValue().toLowerCase(); if (toAddDate.compareTo(currDate) > 0) { // already at correct position break; @@ -147,10 +147,10 @@ public void setExercise(Exercise target, Exercise editedExercise) { */ public void sortByExerciseDateAndName() { Comparator byExerciseDate = (Exercise e1, Exercise e2) -> { - LocalDate e1Date = e1.getExerciseDate().value; - LocalDate e2Date = e2.getExerciseDate().value; - String e1Name = e1.getExerciseName().value.toUpperCase(); - String e2Name = e2.getExerciseName().value.toUpperCase(); + LocalDate e1Date = e1.getExerciseDate().getValue(); + LocalDate e2Date = e2.getExerciseDate().getValue(); + String e1Name = e1.getExerciseName().getValue().toUpperCase(); + String e2Name = e2.getExerciseName().getValue().toUpperCase(); if (e2Date.compareTo(e1Date) == 0) { return e1Name.compareTo(e2Name); } From ac52de8712e5086f0156839a1a606c2cac653811 Mon Sep 17 00:00:00 2001 From: Yonggiee Date: Fri, 10 Apr 2020 22:37:25 +0800 Subject: [PATCH 2/2] refactor code so its easier to draw --- .../seedu/address/model/exercise/UniqueExerciseList.java | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/main/java/seedu/address/model/exercise/UniqueExerciseList.java b/src/main/java/seedu/address/model/exercise/UniqueExerciseList.java index 2d224e40eaa..cd3e025cf67 100644 --- a/src/main/java/seedu/address/model/exercise/UniqueExerciseList.java +++ b/src/main/java/seedu/address/model/exercise/UniqueExerciseList.java @@ -100,10 +100,12 @@ public void addToSorted(Exercise toAdd) { for (Exercise curr : internalList) { LocalDate currDate = curr.getExerciseDate().getValue(); String currName = curr.getExerciseName().getValue().toLowerCase(); - if (toAddDate.compareTo(currDate) > 0) { + + int dateComparision = toAddDate.compareTo(currDate); + if (dateComparision > 0) { // already at correct position break; - } else if (toAddDate.compareTo(currDate) == 0) { + } else if (dateComparision == 0) { // sort by name if (toAddName.compareTo(currName) <= 0) { break;