1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/src/main/java/de/uapcore/lightpit/viewmodel/ProjectInfo.java Mon Jun 01 14:46:58 2020 +0200 1.3 @@ -0,0 +1,58 @@ 1.4 +package de.uapcore.lightpit.viewmodel; 1.5 + 1.6 +import de.uapcore.lightpit.entities.IssueSummary; 1.7 +import de.uapcore.lightpit.entities.Project; 1.8 +import de.uapcore.lightpit.entities.Version; 1.9 +import de.uapcore.lightpit.entities.VersionStatus; 1.10 + 1.11 +import java.util.Collections; 1.12 +import java.util.List; 1.13 + 1.14 +public class ProjectInfo { 1.15 + 1.16 + private final Project project; 1.17 + private List<Version> versions = Collections.emptyList(); 1.18 + private IssueSummary issueSummary = new IssueSummary(); 1.19 + 1.20 + public ProjectInfo(Project project) { 1.21 + this.project = project; 1.22 + } 1.23 + 1.24 + public Project getProject() { 1.25 + return project; 1.26 + } 1.27 + 1.28 + public List<Version> getVersions() { 1.29 + return versions; 1.30 + } 1.31 + 1.32 + public void setVersions(List<Version> versions) { 1.33 + this.versions = versions; 1.34 + } 1.35 + 1.36 + public Version getLatestVersion() { 1.37 + for (var v : versions) { 1.38 + if (v.getStatus().ordinal() >= VersionStatus.Released.ordinal()) 1.39 + return v; 1.40 + } 1.41 + return null; 1.42 + } 1.43 + 1.44 + public Version getNextVersion() { 1.45 + Version next = null; 1.46 + for (var v : versions) { 1.47 + if (v.getStatus().ordinal() >= VersionStatus.Released.ordinal()) 1.48 + break; 1.49 + next = v; 1.50 + } 1.51 + return next; 1.52 + } 1.53 + 1.54 + public IssueSummary getIssueSummary() { 1.55 + return issueSummary; 1.56 + } 1.57 + 1.58 + public void setIssueSummary(IssueSummary issueSummary) { 1.59 + this.issueSummary = issueSummary; 1.60 + } 1.61 +}