33 import de.uapcore.lightpit.entities.* |
33 import de.uapcore.lightpit.entities.* |
34 import de.uapcore.lightpit.types.IssueCategory |
34 import de.uapcore.lightpit.types.IssueCategory |
35 import de.uapcore.lightpit.types.IssueStatus |
35 import de.uapcore.lightpit.types.IssueStatus |
36 import de.uapcore.lightpit.types.VersionStatus |
36 import de.uapcore.lightpit.types.VersionStatus |
37 import de.uapcore.lightpit.types.WebColor |
37 import de.uapcore.lightpit.types.WebColor |
38 import de.uapcore.lightpit.util.AllFilter |
|
39 import de.uapcore.lightpit.util.IssueFilter |
|
40 import de.uapcore.lightpit.util.IssueSorter.Companion.DEFAULT_ISSUE_SORTER |
38 import de.uapcore.lightpit.util.IssueSorter.Companion.DEFAULT_ISSUE_SORTER |
41 import de.uapcore.lightpit.util.SpecificFilter |
|
42 import de.uapcore.lightpit.viewmodel.* |
39 import de.uapcore.lightpit.viewmodel.* |
43 import java.sql.Date |
40 import java.sql.Date |
44 import javax.servlet.annotation.WebServlet |
41 import javax.servlet.annotation.WebServlet |
45 |
42 |
46 @WebServlet(urlPatterns = ["/projects/*"]) |
43 @WebServlet(urlPatterns = ["/projects/*"]) |
187 } |
184 } |
188 |
185 |
189 private fun project(http: HttpRequest, dao: DataAccessObject) { |
186 private fun project(http: HttpRequest, dao: DataAccessObject) { |
190 withPathInfo(http, dao)?.run { |
187 withPathInfo(http, dao)?.run { |
191 |
188 |
192 val issues = dao.listIssues(IssueFilter( |
189 val issues = dao.listIssues(project, version, component) |
193 project = SpecificFilter(project), |
190 .sortedWith(DEFAULT_ISSUE_SORTER) |
194 version = version?.let { SpecificFilter(it) } ?: AllFilter(), |
|
195 component = component?.let { SpecificFilter(it) } ?: AllFilter() |
|
196 )).sortedWith(DEFAULT_ISSUE_SORTER) |
|
197 |
191 |
198 with(http) { |
192 with(http) { |
199 pageTitle = project.name |
193 pageTitle = project.name |
200 view = ProjectDetails(projectInfo, issues, version, component) |
194 view = ProjectDetails(projectInfo, issues, version, component) |
201 feedPath = feedPath(project) |
195 feedPath = feedPath(project) |