From 5f1ea0ee335a73edf53939b87218a34e93fe4de9 Mon Sep 17 00:00:00 2001 From: sowgro Date: Thu, 9 Oct 2025 21:03:25 -0400 Subject: Menu cleanup - pass 1 --- src/main/java/design/model/Golfer.java | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) (limited to 'src/main/java/design/model/Golfer.java') diff --git a/src/main/java/design/model/Golfer.java b/src/main/java/design/model/Golfer.java index d34073f..07c2368 100644 --- a/src/main/java/design/model/Golfer.java +++ b/src/main/java/design/model/Golfer.java @@ -12,7 +12,7 @@ public class Golfer { private final List courses; private final List rounds; private final List clubs; // Keep track of golfer's clubs - private int nextClubId = 1; + private int nextClubId; @JsonCreator private Golfer(String username, int passwordHash, String fullName, List courses, List rounds, @@ -93,4 +93,13 @@ public class Golfer { public Club[] getClubs() { return clubs.toArray(Club[]::new); } + + @Override + public String toString() { + return String.format("%s (@%s)", fullName, username); + } + + public void removeClub(Club c) { + clubs.remove(c); + } } -- cgit v1.2.3 From fac7fb71260b901a893b5b90aae23e86d6c23550 Mon Sep 17 00:00:00 2001 From: sowgro Date: Sat, 11 Oct 2025 22:24:54 -0400 Subject: Menu cleanup - pass 2 --- src/main/java/design/model/Golfer.java | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'src/main/java/design/model/Golfer.java') diff --git a/src/main/java/design/model/Golfer.java b/src/main/java/design/model/Golfer.java index 07c2368..768c63c 100644 --- a/src/main/java/design/model/Golfer.java +++ b/src/main/java/design/model/Golfer.java @@ -86,6 +86,10 @@ public class Golfer { return c; } + public boolean hasClubs() { + return !clubs.isEmpty(); + } + public boolean hasClub(Club c) { return clubs.contains(c); } -- cgit v1.2.3 From df8adcc59fad860445527c8a4da820a73036b542 Mon Sep 17 00:00:00 2001 From: sowgro Date: Sat, 11 Oct 2025 23:49:49 -0400 Subject: Menu cleanup - pass 3 --- src/main/java/design/model/Golfer.java | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'src/main/java/design/model/Golfer.java') diff --git a/src/main/java/design/model/Golfer.java b/src/main/java/design/model/Golfer.java index 768c63c..774bb78 100644 --- a/src/main/java/design/model/Golfer.java +++ b/src/main/java/design/model/Golfer.java @@ -72,6 +72,10 @@ public class Golfer { courses.remove(course); } + public boolean hasCourses() { + return !courses.isEmpty(); + } + public Round[] getRounds() { return rounds.toArray(Round[]::new); } -- cgit v1.2.3 From 8d37a242acf4026c097f44c2383a7c746cff6393 Mon Sep 17 00:00:00 2001 From: sowgro Date: Sun, 12 Oct 2025 00:55:11 -0400 Subject: fix club serialization and saving of some options --- src/main/java/design/model/Golfer.java | 2 ++ 1 file changed, 2 insertions(+) (limited to 'src/main/java/design/model/Golfer.java') diff --git a/src/main/java/design/model/Golfer.java b/src/main/java/design/model/Golfer.java index 774bb78..48daae8 100644 --- a/src/main/java/design/model/Golfer.java +++ b/src/main/java/design/model/Golfer.java @@ -1,10 +1,12 @@ package design.model; import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; import java.util.ArrayList; import java.util.List; +@JsonPropertyOrder({ "clubs", "nextClubId" }) public class Golfer { private String username; private int passwordHash; -- cgit v1.2.3