diff -r 3d16ad54b3dc -r 0a658e53177c src/main/java/de/uapcore/lightpit/viewmodel/ProjectInfo.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/main/java/de/uapcore/lightpit/viewmodel/ProjectInfo.java Mon Jun 01 14:46:58 2020 +0200 @@ -0,0 +1,58 @@ +package de.uapcore.lightpit.viewmodel; + +import de.uapcore.lightpit.entities.IssueSummary; +import de.uapcore.lightpit.entities.Project; +import de.uapcore.lightpit.entities.Version; +import de.uapcore.lightpit.entities.VersionStatus; + +import java.util.Collections; +import java.util.List; + +public class ProjectInfo { + + private final Project project; + private List versions = Collections.emptyList(); + private IssueSummary issueSummary = new IssueSummary(); + + public ProjectInfo(Project project) { + this.project = project; + } + + public Project getProject() { + return project; + } + + public List getVersions() { + return versions; + } + + public void setVersions(List versions) { + this.versions = versions; + } + + public Version getLatestVersion() { + for (var v : versions) { + if (v.getStatus().ordinal() >= VersionStatus.Released.ordinal()) + return v; + } + return null; + } + + public Version getNextVersion() { + Version next = null; + for (var v : versions) { + if (v.getStatus().ordinal() >= VersionStatus.Released.ordinal()) + break; + next = v; + } + return next; + } + + public IssueSummary getIssueSummary() { + return issueSummary; + } + + public void setIssueSummary(IssueSummary issueSummary) { + this.issueSummary = issueSummary; + } +}