diff options
Diffstat (limited to '')
| -rw-r--r-- | src/main/java/design/model/Club.java | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/src/main/java/design/model/Club.java b/src/main/java/design/model/Club.java index b12fd99..c19811c 100644 --- a/src/main/java/design/model/Club.java +++ b/src/main/java/design/model/Club.java @@ -1,5 +1,6 @@ package design.model; +import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonIdentityInfo; import com.fasterxml.jackson.annotation.ObjectIdGenerators; @@ -21,18 +22,26 @@ public class Club { PUTTER } - private final int id; + private int id; private final String manufacture; private final String nickname; private final ClubType clubType; - public Club(int id, String manufacture, String nickname, ClubType clubType) { + @JsonCreator + private Club(int id, String manufacture, String nickname, ClubType clubType) { this.id = id; this.manufacture = manufacture; this.nickname = nickname; this.clubType = clubType; } + public Club(String manufacture, String nickname, ClubType clubType) { + this.id = -1; + this.manufacture = manufacture; + this.nickname = nickname; + this.clubType = clubType; + } + public int getId() { return id; } @@ -49,6 +58,11 @@ public class Club { return clubType; } + public void setId(int id) { + assert this.id == -1; + this.id = id; + } + @Override public String toString() { return String.format("#%d %s - %s (%s)", id, nickname, manufacture, clubType); |
