diff --git a/pom.xml b/pom.xml index 2a4e3e8..330bdcc 100644 --- a/pom.xml +++ b/pom.xml @@ -167,6 +167,10 @@ com.google.code.gson gson + + org.projectlombok + lombok + diff --git a/src/main/java/app/data/entity/AbstractEntity.java b/src/main/java/app/data/entity/AbstractEntity.java index 478e975..37ca255 100644 --- a/src/main/java/app/data/entity/AbstractEntity.java +++ b/src/main/java/app/data/entity/AbstractEntity.java @@ -1,42 +1,29 @@ package app.data.entity; -import javax.persistence.GeneratedValue; -import javax.persistence.Id; -import javax.persistence.MappedSuperclass; +import lombok.Getter; +import lombok.Setter; +import javax.persistence.*; + +@Getter +@Setter @MappedSuperclass -public abstract class AbstractEntity { // TODO: Use this in your own entities (adapt annotations and equals()) +public abstract class AbstractEntity { @Id - @GeneratedValue + @GeneratedValue(strategy = GenerationType.IDENTITY) + @Column(name = "id", nullable = false) private Integer id; - public Integer getId() { - return id; - } - - public void setId(Integer id) { - this.id = id; - } - @Override public int hashCode() { - if (id != null) { - return id.hashCode(); - } - return super.hashCode(); + return id != null ? id.hashCode() : super.hashCode(); } @Override public boolean equals(Object obj) { - if (!(obj instanceof AbstractEntity)) { - return false; // null or other class - } + if (!(obj instanceof AbstractEntity)) return false; // null or other class AbstractEntity other = (AbstractEntity) obj; - - if (id != null) { - return id.equals(other.id); - } - return super.equals(other); + return id != null ? id.equals(other.id) : super.equals(other); } } \ No newline at end of file diff --git a/src/main/java/app/data/entity/Game.java b/src/main/java/app/data/entity/Game.java index a20683c..58e9438 100644 --- a/src/main/java/app/data/entity/Game.java +++ b/src/main/java/app/data/entity/Game.java @@ -1,78 +1,36 @@ package app.data.entity; +import lombok.Getter; +import lombok.Setter; + import javax.persistence.*; -import java.util.Objects; +@Getter +@Setter @Entity -@Table(name = "game", schema = "public", catalog = "chessleague") -public class Game { - private Integer id; - private Boolean player1IsWhite; - private Integer result; +@Table(name = "game", + schema = "public", + catalog = "chessleague") +public class Game extends AbstractEntity { + + @ManyToOne(cascade = CascadeType.DETACH) + @JoinColumn(name = "match", + referencedColumnName = "id", + nullable = false) private Match match; - private GameInfo gameInfo; - - @Id - @GeneratedValue(strategy = GenerationType.IDENTITY) - @Column(name = "id", nullable = false) - public Integer getId() { - return id; - } - - public void setId(Integer id) { - this.id = id; - } @Basic - @Column(name = "player1_is_white", nullable = false) - public Boolean getPlayer1IsWhite() { - return player1IsWhite; - } - - public void setPlayer1IsWhite(Boolean player1IsWhite) { - this.player1IsWhite = player1IsWhite; - } + @Column(name = "player1_is_white", + nullable = false) + private Boolean player1IsWhite; @Basic - @Column(name = "result", nullable = false) - public Integer getResult() { - return result; - } - - public void setResult(Integer result) { - this.result = result; - } - - @Override - public boolean equals(Object o) { - if (this == o) return true; - if (o == null || getClass() != o.getClass()) return false; - Game that = (Game) o; - return Objects.equals(id, that.id) && Objects.equals(player1IsWhite, that.player1IsWhite) && Objects.equals(result, that.result); - } - - @Override - public int hashCode() { - return Objects.hash(id, player1IsWhite, result); - } - - @ManyToOne(cascade=CascadeType.DETACH) - @JoinColumn(name = "match", referencedColumnName = "id", nullable = false) - public Match getMatch() { - return match; - } - - public void setMatch(Match match) { - this.match = match; - } + @Column(name = "result", + nullable = false) + private Integer result; @OneToOne(cascade = CascadeType.ALL) - @JoinColumn(name = "info", referencedColumnName = "id") - public GameInfo getGameInfo() { - return gameInfo; - } - - public void setGameInfo(GameInfo gameInfo) { - this.gameInfo = gameInfo; - } + @JoinColumn(name = "info", + referencedColumnName = "id") + private GameInfo gameInfo; } diff --git a/src/main/java/app/data/entity/GameInfo.java b/src/main/java/app/data/entity/GameInfo.java index a0275a4..ba578d7 100644 --- a/src/main/java/app/data/entity/GameInfo.java +++ b/src/main/java/app/data/entity/GameInfo.java @@ -1,176 +1,69 @@ package app.data.entity; +import lombok.Getter; +import lombok.Setter; + import javax.persistence.*; -import java.util.Objects; +@Getter +@Setter @Entity -@Table(name = "game_info", schema = "public", catalog = "chessleague") -public class GameInfo { - private Integer id; - private String chessComId; - private Game game; - private String timeControl; - private String fen; - private Long endTime; - private String pgn; - private Boolean rated; - private String timeClass; - private String rules; - private Integer whiteRating; - private Integer blackRating; - private String whiteResult; - private String blackResult; - - @Id - @GeneratedValue(strategy = GenerationType.IDENTITY) - @Column(name = "id", nullable = false) - public Integer getId() { - return id; - } +@Table(name = "game_info", + schema = "public", + catalog = "chessleague") +public class GameInfo extends AbstractEntity { - public void setId(Integer id) { - this.id = id; - } + @OneToOne(mappedBy = "gameInfo", + cascade = CascadeType.DETACH) + private Game game; @Basic - @Column(name = "chess_com_id", length = -1) - public String getChessComId() { - return chessComId; - } - - public void setChessComId(String chessComId) { - this.chessComId = chessComId; - } + @Column(name = "chess_com_id") + private String chessComId; @Basic - @Column(name = "time_control", nullable = false) - public String getTimeControl() { - return timeControl; - } - - public void setTimeControl(String format) { - this.timeControl = format; - } + @Column(name = "time_control", + nullable = false) + private String timeControl; @Basic - @Column(name = "fen", nullable = false) - public String getFen() { - return fen; - } - - public void setFen(String fen) { - this.fen = fen; - } - - @Override - public boolean equals(Object o) { - if (this == o) return true; - if (o == null || getClass() != o.getClass()) return false; - GameInfo that = (GameInfo) o; - return Objects.equals(id, that.id) && Objects.equals(chessComId, that.chessComId) && Objects.equals(timeControl, that.timeControl); - } - - @Override - public int hashCode() { - return Objects.hash(id, chessComId, timeControl); - } - - @OneToOne(mappedBy = "gameInfo", cascade = CascadeType.DETACH) - public Game getGame() { - return game; - } - - public void setGame(Game game) { - this.game = game; - } + @Column(name = "fen", + nullable = false) + private String fen; @Basic @Column(name = "end_time") // TODO: make not nullable (you need the end times of the first matchday for that...) - public Long getEndTime() { - return endTime; - } - - public void setEndTime(Long endTime) { - this.endTime = endTime; - } + private Long endTime; @Basic @Column(name = "pgn") - public String getPgn() { - return pgn; - } - - public void setPgn(String pgn) { - this.pgn = pgn; - } + private String pgn; @Basic @Column(name = "rated") - public Boolean getRated() { - return rated; - } - - public void setRated(Boolean rated) { - this.rated = rated; - } + private Boolean rated; @Basic @Column(name = "time_class") - public String getTimeClass() { - return timeClass; - } - - public void setTimeClass(String timeClass) { - this.timeClass = timeClass; - } + private String timeClass; @Basic @Column(name = "rules") - public String getRules() { - return rules; - } - - public void setRules(String rules) { - this.rules = rules; - } + private String rules; @Basic @Column(name = "white_rating") - public Integer getWhiteRating() { - return whiteRating; - } - - public void setWhiteRating(Integer whiteRating) { - this.whiteRating = whiteRating; - } + private Integer whiteRating; @Basic @Column(name = "black_rating") - public Integer getBlackRating() { - return blackRating; - } - - public void setBlackRating(Integer blackRating) { - this.blackRating = blackRating; - } + private Integer blackRating; @Basic @Column(name = "white_result") - public String getWhiteResult() { - return whiteResult; - } - - public void setWhiteResult(String whiteResult) { - this.whiteResult = whiteResult; - } + private String whiteResult; @Basic @Column(name = "black_result") - public String getBlackResult() { - return blackResult; - } - - public void setBlackResult(String blackResult) { - this.blackResult = blackResult; - } + private String blackResult; } diff --git a/src/main/java/app/data/entity/Match.java b/src/main/java/app/data/entity/Match.java index 033d19a..ef8bb11 100644 --- a/src/main/java/app/data/entity/Match.java +++ b/src/main/java/app/data/entity/Match.java @@ -1,78 +1,40 @@ package app.data.entity; +import lombok.Getter; +import lombok.Setter; + import javax.persistence.*; import java.util.Collection; -import java.util.Objects; +@Getter +@Setter @Entity -@Table(name = "match", schema = "public", catalog = "chessleague") -public class Match { - private Integer id; - private Collection games; - private Player player1; - private Player player2; +@Table(name = "match", + schema = "public", + catalog = "chessleague") +public class Match extends AbstractEntity { + + @ManyToOne(cascade = CascadeType.DETACH) + @JoinColumn(name = "matchday", + referencedColumnName = "id", + nullable = false) private Matchday matchday; - @Id - @GeneratedValue(strategy = GenerationType.IDENTITY) - @Column(name = "id", nullable = false) - public Integer getId() { - return id; - } - - public void setId(Integer id) { - this.id = id; - } - - @Override - public boolean equals(Object o) { - if (this == o) return true; - if (o == null || getClass() != o.getClass()) return false; - Match that = (Match) o; - return Objects.equals(id, that.id); - } - - @Override - public int hashCode() { - return Objects.hash(id); - } - - @OneToMany(mappedBy = "match", fetch = FetchType.EAGER, cascade = CascadeType.ALL, orphanRemoval = true) - public Collection getGames() { - return games; - } - - public void setGames(Collection games) { - this.games = games; - } - - @ManyToOne(cascade=CascadeType.DETACH) - @JoinColumn(name = "player1", referencedColumnName = "id", nullable = false) - public Player getPlayer1() { - return player1; - } - - public void setPlayer1(Player player1) { - this.player1 = player1; - } - - @ManyToOne(cascade=CascadeType.DETACH) - @JoinColumn(name = "player2", referencedColumnName = "id", nullable = false) - public Player getPlayer2() { - return player2; - } - - public void setPlayer2(Player player2) { - this.player2 = player2; - } + @ManyToOne(cascade = CascadeType.DETACH) + @JoinColumn(name = "player1", + referencedColumnName = "id", + nullable = false) + private Player player1; - @ManyToOne(cascade=CascadeType.DETACH) - @JoinColumn(name = "matchday", referencedColumnName = "id", nullable = false) - public Matchday getMatchday() { - return matchday; - } + @ManyToOne(cascade = CascadeType.DETACH) + @JoinColumn(name = "player2", + referencedColumnName = "id", + nullable = false) + private Player player2; - public void setMatchday(Matchday matchday) { - this.matchday = matchday; - } + @OneToMany(mappedBy = "match", + fetch = FetchType.EAGER, + cascade = CascadeType.ALL, + orphanRemoval = true) + private Collection games; } diff --git a/src/main/java/app/data/entity/Matchday.java b/src/main/java/app/data/entity/Matchday.java index 29faa3f..d18bb5f 100644 --- a/src/main/java/app/data/entity/Matchday.java +++ b/src/main/java/app/data/entity/Matchday.java @@ -1,67 +1,32 @@ package app.data.entity; +import lombok.Getter; +import lombok.Setter; + import javax.persistence.*; import java.util.Collection; -import java.util.Objects; +@Getter +@Setter @Entity -@Table(name = "matchday", schema = "public", catalog = "chessleague") -public class Matchday { - private Integer id; - private Integer number; - private Collection matches; +@Table(name = "matchday", + schema = "public", + catalog = "chessleague") +public class Matchday extends AbstractEntity { + + @ManyToOne(cascade = CascadeType.DETACH) + @JoinColumn(name = "season", + referencedColumnName = "id", + nullable = false) private Season season; - @Id - @GeneratedValue(strategy = GenerationType.IDENTITY) - @Column(name = "id", nullable = false) - public Integer getId() { - return id; - } - - public void setId(Integer id) { - this.id = id; - } - @Basic @Column(name = "number", nullable = false) - public Integer getNumber() { - return number; - } - - public void setNumber(Integer number) { - this.number = number; - } - - @Override - public boolean equals(Object o) { - if (this == o) return true; - if (o == null || getClass() != o.getClass()) return false; - Matchday that = (Matchday) o; - return Objects.equals(id, that.id) && Objects.equals(number, that.number); - } - - @Override - public int hashCode() { - return Objects.hash(id, number); - } - - @OneToMany(mappedBy = "matchday", fetch = FetchType.EAGER, cascade = CascadeType.ALL) - public Collection getMatches() { - return matches; - } - - public void setMatches(Collection matches) { - this.matches = matches; - } - - @ManyToOne(cascade=CascadeType.DETACH) - @JoinColumn(name = "season", referencedColumnName = "id", nullable = false) - public Season getSeason() { - return season; - } + private Integer number; - public void setSeason(Season season) { - this.season = season; - } + @OneToMany(mappedBy = "matchday", + fetch = FetchType.EAGER, + cascade = CascadeType.ALL, + orphanRemoval = true) + private Collection matches; } diff --git a/src/main/java/app/data/entity/Player.java b/src/main/java/app/data/entity/Player.java index 383777a..1efd67e 100644 --- a/src/main/java/app/data/entity/Player.java +++ b/src/main/java/app/data/entity/Player.java @@ -1,89 +1,39 @@ package app.data.entity; +import lombok.Getter; +import lombok.Setter; + import javax.persistence.*; import java.util.Collection; -import java.util.Objects; +@Getter +@Setter @Entity -@Table(name = "player", schema = "public", catalog = "chessleague") -public class Player { - private Integer id; - private String name; - private String nickname; - private Collection matchesAsPlayer1; - private Collection matchesAsPlayer2; - private PlayerInfo playerInfo; - - @Id - @GeneratedValue(strategy = GenerationType.IDENTITY) - @Column(name = "id", nullable = false) - public Integer getId() { - return id; - } - - public void setId(Integer id) { - this.id = id; - } +@Table(name = "player", + schema = "public", + catalog = "chessleague") +public class Player extends AbstractEntity { @Basic - @Column(name = "name", nullable = false, length = -1) - public String getName() { - return name; - } - - public void setName(String name) { - this.name = name; - } + @Column(name = "name", + nullable = false) + private String name; @Basic - @Column(name = "nickname", nullable = false, length = -1) - public String getNickname() { - return nickname; - } - - public void setNickname(String nickname) { - this.nickname = nickname; - } - - @Override - public boolean equals(Object o) { - if (this == o) return true; - if (o == null || getClass() != o.getClass()) return false; - Player that = (Player) o; - return Objects.equals(id, that.id) && Objects.equals(name, that.name) && Objects.equals(nickname, that.nickname); - } - - @Override - public int hashCode() { - return Objects.hash(id, name, nickname); - } - - @OneToMany(mappedBy = "player1", cascade = CascadeType.DETACH) - public Collection getMatchesAsPlayer1() { - return matchesAsPlayer1; - } - - public void setMatchesAsPlayer1(Collection matchesAsPlayer1) { - this.matchesAsPlayer1 = matchesAsPlayer1; - } + @Column(name = "nickname", + nullable = false) + private String nickname; - @OneToMany(mappedBy = "player2", cascade = CascadeType.DETACH) - public Collection getMatchesAsPlayer2() { - return matchesAsPlayer2; - } + @OneToMany(mappedBy = "player1", + cascade = CascadeType.DETACH) + private Collection matchesAsPlayer1; - public void setMatchesAsPlayer2(Collection matchesAsPlayer2) { - this.matchesAsPlayer2 = matchesAsPlayer2; - } + @OneToMany(mappedBy = "player2", + cascade = CascadeType.DETACH) + private Collection matchesAsPlayer2; @OneToOne(cascade = CascadeType.ALL) - @JoinColumn(name = "info", referencedColumnName = "id") - public PlayerInfo getPlayerInfo() { - return playerInfo; - } - - public void setPlayerInfo(PlayerInfo playerInfo) { - this.playerInfo = playerInfo; - } - -} + @JoinColumn(name = "info", + referencedColumnName = "id") + private PlayerInfo playerInfo; +} \ No newline at end of file diff --git a/src/main/java/app/data/entity/PlayerInfo.java b/src/main/java/app/data/entity/PlayerInfo.java index fafe417..e9cf68b 100644 --- a/src/main/java/app/data/entity/PlayerInfo.java +++ b/src/main/java/app/data/entity/PlayerInfo.java @@ -1,55 +1,23 @@ package app.data.entity; +import lombok.Getter; +import lombok.Setter; + import javax.persistence.*; -import java.util.Objects; +@Getter +@Setter @Entity -@Table(name = "player_info", schema = "public", catalog = "chessleague") -public class PlayerInfo { - private Integer id; - private String url; - private Player player; +@Table(name = "player_info", + schema = "public", + catalog = "chessleague") +public class PlayerInfo extends AbstractEntity { - @Id - @GeneratedValue(strategy = GenerationType.IDENTITY) - @Column(name = "id", nullable = false) - public Integer getId() { - return id; - } - - public void setId(Integer id) { - this.id = id; - } + @OneToOne(mappedBy = "playerInfo", + cascade = CascadeType.DETACH) + private Player player; @Basic - @Column(name = "url", length = -1) - public String getUrl() { - return url; - } - - public void setUrl(String url) { - this.url = url; - } - - @Override - public boolean equals(Object o) { - if (this == o) return true; - if (o == null || getClass() != o.getClass()) return false; - PlayerInfo that = (PlayerInfo) o; - return Objects.equals(id, that.id) && Objects.equals(url, that.url); - } - - @Override - public int hashCode() { - return Objects.hash(id, url); - } - - @OneToOne(mappedBy = "playerInfo", cascade = CascadeType.DETACH) - public Player getPlayer() { - return player; - } - - public void setPlayer(Player player) { - this.player = player; - } + @Column(name = "url") + private String url; } diff --git a/src/main/java/app/data/entity/Season.java b/src/main/java/app/data/entity/Season.java index d5aba31..4b1f5a4 100644 --- a/src/main/java/app/data/entity/Season.java +++ b/src/main/java/app/data/entity/Season.java @@ -1,68 +1,31 @@ package app.data.entity; +import lombok.Getter; +import lombok.Setter; + import javax.persistence.*; import java.util.Collection; -import java.util.Objects; +@Getter +@Setter @Entity -@Table(name = "season", schema = "public", catalog = "chessleague") -public class Season { - private Integer id; - private Integer yearStart; - private Integer yearEnd; - private Collection matchdays; - - @Id - @GeneratedValue(strategy = GenerationType.IDENTITY) - @Column(name = "id", nullable = false) - public Integer getId() { - return id; - } - - public void setId(Integer id) { - this.id = id; - } +@Table(name = "season", + schema = "public", + catalog = "chessleague") +public class Season extends AbstractEntity { @Basic - @Column(name = "year_start", nullable = false) - public Integer getYearStart() { - return yearStart; - } - - public void setYearStart(Integer yearStart) { - this.yearStart = yearStart; - } + @Column(name = "year_start", + nullable = false) + private Integer yearStart; @Basic - @Column(name = "year_end", nullable = false) - public Integer getYearEnd() { - return yearEnd; - } - - public void setYearEnd(Integer yearEnd) { - this.yearEnd = yearEnd; - } - - @Override - public boolean equals(Object o) { - if (this == o) return true; - if (o == null || getClass() != o.getClass()) return false; - Season that = (Season) o; - return Objects.equals(id, that.id) && Objects.equals(yearStart, that.yearStart) && Objects.equals(yearEnd, that.yearEnd); - } - - @Override - public int hashCode() { - return Objects.hash(id, yearStart, yearEnd); - } - - @OneToMany(mappedBy = "season", cascade = CascadeType.ALL) - public Collection getMatchdays() { - return matchdays; - } - - public void setMatchdays(Collection matchdays) { - this.matchdays = matchdays; - } + @Column(name = "year_end", + nullable = false) + private Integer yearEnd; + @OneToMany(mappedBy = "season", + cascade = CascadeType.ALL, + orphanRemoval = true) + private Collection matchdays; } diff --git a/src/main/java/app/data/entity/example/SampleAddress.java b/src/main/java/app/data/entity/example/SampleAddress.java index 61fe565..cd7d54b 100644 --- a/src/main/java/app/data/entity/example/SampleAddress.java +++ b/src/main/java/app/data/entity/example/SampleAddress.java @@ -16,30 +16,39 @@ public class SampleAddress extends AbstractEntity { public String getStreet() { return street; } + public void setStreet(String street) { this.street = street; } + public String getPostalCode() { return postalCode; } + public void setPostalCode(String postalCode) { this.postalCode = postalCode; } + public String getCity() { return city; } + public void setCity(String city) { this.city = city; } + public String getState() { return state; } + public void setState(String state) { this.state = state; } + public String getCountry() { return country; } + public void setCountry(String country) { this.country = country; } diff --git a/src/main/java/app/data/entity/example/SamplePerson.java b/src/main/java/app/data/entity/example/SamplePerson.java index cf41e08..6048cd1 100644 --- a/src/main/java/app/data/entity/example/SamplePerson.java +++ b/src/main/java/app/data/entity/example/SamplePerson.java @@ -19,42 +19,55 @@ public class SamplePerson extends AbstractEntity { public String getFirstName() { return firstName; } + public void setFirstName(String firstName) { this.firstName = firstName; } + public String getLastName() { return lastName; } + public void setLastName(String lastName) { this.lastName = lastName; } + public String getEmail() { return email; } + public void setEmail(String email) { this.email = email; } + public String getPhone() { return phone; } + public void setPhone(String phone) { this.phone = phone; } + public LocalDate getDateOfBirth() { return dateOfBirth; } + public void setDateOfBirth(LocalDate dateOfBirth) { this.dateOfBirth = dateOfBirth; } + public String getOccupation() { return occupation; } + public void setOccupation(String occupation) { this.occupation = occupation; } + public boolean isImportant() { return important; } + public void setImportant(boolean important) { this.important = important; } diff --git a/src/main/java/app/data/service/ChessComService.java b/src/main/java/app/data/service/ChessComService.java index 0144b27..42fc383 100644 --- a/src/main/java/app/data/service/ChessComService.java +++ b/src/main/java/app/data/service/ChessComService.java @@ -8,9 +8,9 @@ import app.data.entity.GameInfo; import app.data.entity.Match; import app.data.entity.Player; import app.utils.ChessComUtils; +import app.utils.HttpUtils; import app.utils.MatchUtils; import app.utils.TimeControl; -import app.utils.HttpUtils; import com.google.gson.Gson; import org.springframework.lang.NonNull; import org.springframework.stereotype.Service; diff --git a/src/main/java/app/data/service/MatchdayService.java b/src/main/java/app/data/service/MatchdayService.java index 78885ec..e1b06d8 100644 --- a/src/main/java/app/data/service/MatchdayService.java +++ b/src/main/java/app/data/service/MatchdayService.java @@ -57,7 +57,7 @@ public class MatchdayService extends CrudService { if (matchdaysWithActivity.isEmpty()) { return getFirstMatchday(season); } - return Optional.of(matchdaysWithActivity.get(matchdaysWithActivity.size()-1)); + return Optional.of(matchdaysWithActivity.get(matchdaysWithActivity.size() - 1)); } public boolean hasActivity(@NonNull Matchday matchday) { diff --git a/src/main/java/app/gameimage/GameImageGenerator.java b/src/main/java/app/gameimage/GameImageGenerator.java index d1e81b1..a5465b6 100644 --- a/src/main/java/app/gameimage/GameImageGenerator.java +++ b/src/main/java/app/gameimage/GameImageGenerator.java @@ -14,7 +14,8 @@ public class GameImageGenerator { private static final Set BLANKS = Set.of('1', '2', '3', '4', '5', '6', '7', '8'); private static final Character ROW_DELIMITER = '/'; - private GameImageGenerator() {} + private GameImageGenerator() { + } public static BufferedImage generateImage(String fen) { BufferedImage image = GameImageUtils.readImage("board"); diff --git a/src/main/java/app/gameimage/GameImageService.java b/src/main/java/app/gameimage/GameImageService.java index 6116e1c..ca5539d 100644 --- a/src/main/java/app/gameimage/GameImageService.java +++ b/src/main/java/app/gameimage/GameImageService.java @@ -12,7 +12,7 @@ import java.io.ByteArrayInputStream; import java.io.File; import java.util.Optional; -import static app.gameimage.GameImageGenerator.*; +import static app.gameimage.GameImageGenerator.generateImage; import static app.gameimage.GameImageUtils.*; @Service diff --git a/src/main/java/app/gameimage/GameImageUtils.java b/src/main/java/app/gameimage/GameImageUtils.java index e76ee17..0cc54e9 100644 --- a/src/main/java/app/gameimage/GameImageUtils.java +++ b/src/main/java/app/gameimage/GameImageUtils.java @@ -1,13 +1,10 @@ package app.gameimage; import app.data.entity.Game; -import com.vaadin.flow.component.html.Image; -import com.vaadin.flow.server.StreamResource; import org.apache.commons.io.FileUtils; import javax.imageio.ImageIO; import java.awt.image.BufferedImage; -import java.io.ByteArrayInputStream; import java.io.File; import java.io.IOException; diff --git a/src/main/java/app/navigation/Navigation.java b/src/main/java/app/navigation/Navigation.java index d128026..4ac86a5 100644 --- a/src/main/java/app/navigation/Navigation.java +++ b/src/main/java/app/navigation/Navigation.java @@ -306,9 +306,11 @@ public class Navigation implements HasUrlParameter { public Optional getSeasonParam() { return getSelectedSeason().map(EntityStringUtils::getSeasonStringForURL); } + public Optional getMatchdayParam() { return getSelectedMatchday().map(EntityStringUtils::getMatchdayStringForURL); } + public Optional getMatchParam() { return getSelectedMatch().map(EntityStringUtils::getMatchStringForURL); } diff --git a/src/main/java/app/navigation/NavigationService.java b/src/main/java/app/navigation/NavigationService.java index 885814b..f110ec5 100644 --- a/src/main/java/app/navigation/NavigationService.java +++ b/src/main/java/app/navigation/NavigationService.java @@ -3,7 +3,6 @@ package app.navigation; import app.data.service.MatchService; import app.data.service.MatchdayService; import app.data.service.SeasonService; -import app.navigation.Navigation; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; diff --git a/src/main/java/app/utils/EntityComponentUtils.java b/src/main/java/app/utils/EntityComponentUtils.java index 8b04c0b..4f7c4fc 100644 --- a/src/main/java/app/utils/EntityComponentUtils.java +++ b/src/main/java/app/utils/EntityComponentUtils.java @@ -5,7 +5,8 @@ import com.vaadin.flow.component.html.Label; import com.vaadin.flow.component.orderedlayout.HorizontalLayout; public class EntityComponentUtils { - private EntityComponentUtils(){} + private EntityComponentUtils() { + } public static HorizontalLayout getPlayerLabel(Player player) { Label name = new Label(player.getName()); diff --git a/src/main/java/app/utils/EntityStringUtils.java b/src/main/java/app/utils/EntityStringUtils.java index 4e183d8..51f2a0d 100644 --- a/src/main/java/app/utils/EntityStringUtils.java +++ b/src/main/java/app/utils/EntityStringUtils.java @@ -38,7 +38,7 @@ public class EntityStringUtils { return getSeasonString(season); } - public static String getMatchdayString(Matchday matchday ) { + public static String getMatchdayString(Matchday matchday) { return matchday.getNumber().toString(); } diff --git a/src/main/java/app/utils/TimeControl.java b/src/main/java/app/utils/TimeControl.java index 92c59de..d572848 100644 --- a/src/main/java/app/utils/TimeControl.java +++ b/src/main/java/app/utils/TimeControl.java @@ -1,7 +1,5 @@ package app.utils; -import java.sql.Time; - public enum TimeControl { TEN_MINUTES, FIVE_MINUTES, diff --git a/src/main/java/app/utils/VaadinUtils.java b/src/main/java/app/utils/VaadinUtils.java index dad1288..3ba6f30 100644 --- a/src/main/java/app/utils/VaadinUtils.java +++ b/src/main/java/app/utils/VaadinUtils.java @@ -1,7 +1,6 @@ package app.utils; import app.data.entity.Player; -import com.vaadin.flow.component.icon.Icon; import com.vaadin.flow.data.renderer.TemplateRenderer; import com.vaadin.flow.function.ValueProvider; diff --git a/src/main/java/app/views/example/cardlist/CardListView.java b/src/main/java/app/views/example/cardlist/CardListView.java index 0952c8e..6fe5c9f 100644 --- a/src/main/java/app/views/example/cardlist/CardListView.java +++ b/src/main/java/app/views/example/cardlist/CardListView.java @@ -140,7 +140,7 @@ public class CardListView extends Div implements AfterNavigationObserver { } private static Person createPerson(String image, String name, String date, String post, String likes, - String comments, String shares) { + String comments, String shares) { Person p = new Person(); p.setImage(image); p.setName(name); diff --git a/src/main/java/app/views/main/MainView.java b/src/main/java/app/views/main/MainView.java index 3a81d26..658b339 100644 --- a/src/main/java/app/views/main/MainView.java +++ b/src/main/java/app/views/main/MainView.java @@ -1,6 +1,5 @@ package app.views.main; -import app.views.match.MatchView; import app.views.matchday.MatchdayView; import app.views.table.TableView; import com.vaadin.flow.component.Component; diff --git a/src/main/java/app/views/match/components/EditMatchCard.java b/src/main/java/app/views/match/components/EditMatchCard.java index c86beb7..6ce0802 100644 --- a/src/main/java/app/views/match/components/EditMatchCard.java +++ b/src/main/java/app/views/match/components/EditMatchCard.java @@ -13,8 +13,6 @@ import com.vaadin.flow.component.ClickEvent; import com.vaadin.flow.component.ComponentEventListener; import com.vaadin.flow.component.UI; import com.vaadin.flow.component.button.Button; -import com.vaadin.flow.component.formlayout.FormLayout; -import com.vaadin.flow.component.formlayout.FormLayout.ResponsiveStep; import com.vaadin.flow.component.html.Label; import com.vaadin.flow.component.icon.Icon; import com.vaadin.flow.component.icon.VaadinIcon; @@ -27,7 +25,6 @@ import java.util.*; import static app.utils.TimeControl.*; import static com.vaadin.flow.component.button.ButtonVariant.LUMO_PRIMARY; -import static com.vaadin.flow.component.formlayout.FormLayout.ResponsiveStep.LabelsPosition.ASIDE; public class EditMatchCard extends VerticalLayout { diff --git a/src/main/java/app/views/match/components/utils/GameCardUtils.java b/src/main/java/app/views/match/components/utils/GameCardUtils.java index 49a3c98..57b0aeb 100644 --- a/src/main/java/app/views/match/components/utils/GameCardUtils.java +++ b/src/main/java/app/views/match/components/utils/GameCardUtils.java @@ -2,28 +2,20 @@ package app.views.match.components.utils; import app.data.entity.Game; import app.data.entity.Player; -import app.gameimage.GameImageUtils; import app.utils.ChessComUtils; import app.utils.EntityComponentUtils; import app.utils.TimeControl; import com.vaadin.flow.component.button.Button; import com.vaadin.flow.component.button.ButtonVariant; import com.vaadin.flow.component.html.Div; -import com.vaadin.flow.component.html.Image; import com.vaadin.flow.component.html.Label; import com.vaadin.flow.component.icon.Icon; import com.vaadin.flow.component.icon.VaadinIcon; import com.vaadin.flow.component.orderedlayout.FlexComponent; import com.vaadin.flow.component.orderedlayout.HorizontalLayout; -import com.vaadin.flow.server.StreamResource; -import org.apache.commons.io.FileUtils; -import java.io.ByteArrayInputStream; -import java.io.File; -import java.io.IOException; import java.util.ArrayList; import java.util.List; -import java.util.Optional; public class GameCardUtils { private GameCardUtils() { diff --git a/src/main/java/app/views/navigation/NavigationViewBase.java b/src/main/java/app/views/navigation/NavigationViewBase.java index 8167c27..46f2124 100644 --- a/src/main/java/app/views/navigation/NavigationViewBase.java +++ b/src/main/java/app/views/navigation/NavigationViewBase.java @@ -1,9 +1,9 @@ package app.views.navigation; import app.navigation.Navigation; -import app.navigation.components.NavigationHeader; import app.navigation.NavigationLevel; import app.navigation.NavigationService; +import app.navigation.components.NavigationHeader; import com.vaadin.flow.component.orderedlayout.FlexComponent; import com.vaadin.flow.component.orderedlayout.VerticalLayout; import com.vaadin.flow.router.BeforeEvent; diff --git a/src/main/resources/application.properties b/src/main/resources/application.properties index 6414578..af2437c 100644 --- a/src/main/resources/application.properties +++ b/src/main/resources/application.properties @@ -1,9 +1,9 @@ server.port=${PORT:8080} # Ensure application is run in Vaadin 14/npm mode -vaadin.compatibilityMode = false -logging.level.org.atmosphere = warn - -# To improve the performance during development. +# suppress inspection "SpringBootApplicationProperties" +vaadin.compatibilityMode=false +logging.level.org.atmosphere=warn +# To improve the performance during development. # For more information https://vaadin.com/docs/v14/flow/spring/tutorial-spring-configuration.html#special-configuration-parameters # vaadin.whitelisted-packages= org/vaadin/example spring.datasource.initialization-mode=always