src/main/java/de/uapcore/lightpit/viewmodel/IssueDetailView.java

Sat, 05 Dec 2020 13:05:00 +0100

author
Mike Becker <universe@uap-core.de>
date
Sat, 05 Dec 2020 13:05:00 +0100
changeset 162
2adc8623dd89
parent 146
b0e83cab0bde
permissions
-rw-r--r--

enables markdown support in issue descriptions and comments - fixes #10

86
0a658e53177c improves issue overview and adds progress information
Mike Becker <universe@uap-core.de>
parents:
diff changeset
1 package de.uapcore.lightpit.viewmodel;
0a658e53177c improves issue overview and adds progress information
Mike Becker <universe@uap-core.de>
parents:
diff changeset
2
162
2adc8623dd89 enables markdown support in issue descriptions and comments - fixes #10
Mike Becker <universe@uap-core.de>
parents: 146
diff changeset
3 import com.vladsch.flexmark.ext.gfm.strikethrough.StrikethroughExtension;
2adc8623dd89 enables markdown support in issue descriptions and comments - fixes #10
Mike Becker <universe@uap-core.de>
parents: 146
diff changeset
4 import com.vladsch.flexmark.ext.tables.TablesExtension;
2adc8623dd89 enables markdown support in issue descriptions and comments - fixes #10
Mike Becker <universe@uap-core.de>
parents: 146
diff changeset
5 import com.vladsch.flexmark.html.HtmlRenderer;
2adc8623dd89 enables markdown support in issue descriptions and comments - fixes #10
Mike Becker <universe@uap-core.de>
parents: 146
diff changeset
6 import com.vladsch.flexmark.parser.Parser;
2adc8623dd89 enables markdown support in issue descriptions and comments - fixes #10
Mike Becker <universe@uap-core.de>
parents: 146
diff changeset
7 import com.vladsch.flexmark.util.data.MutableDataSet;
146
b0e83cab0bde adds issue detail view - fixes #24
Mike Becker <universe@uap-core.de>
parents: 134
diff changeset
8 import de.uapcore.lightpit.entities.Issue;
b0e83cab0bde adds issue detail view - fixes #24
Mike Becker <universe@uap-core.de>
parents: 134
diff changeset
9 import de.uapcore.lightpit.entities.IssueComment;
86
0a658e53177c improves issue overview and adds progress information
Mike Becker <universe@uap-core.de>
parents:
diff changeset
10
162
2adc8623dd89 enables markdown support in issue descriptions and comments - fixes #10
Mike Becker <universe@uap-core.de>
parents: 146
diff changeset
11 import java.util.Arrays;
146
b0e83cab0bde adds issue detail view - fixes #24
Mike Becker <universe@uap-core.de>
parents: 134
diff changeset
12 import java.util.List;
86
0a658e53177c improves issue overview and adds progress information
Mike Becker <universe@uap-core.de>
parents:
diff changeset
13
146
b0e83cab0bde adds issue detail view - fixes #24
Mike Becker <universe@uap-core.de>
parents: 134
diff changeset
14 public class IssueDetailView extends ProjectView {
99
a369fb1b3aa2 cleanup ProjectsModule
Mike Becker <universe@uap-core.de>
parents: 95
diff changeset
15 private Issue issue;
86
0a658e53177c improves issue overview and adds progress information
Mike Becker <universe@uap-core.de>
parents:
diff changeset
16
124
ed2e7aef2a3e adds issue comments
Mike Becker <universe@uap-core.de>
parents: 99
diff changeset
17 private List<IssueComment> comments;
86
0a658e53177c improves issue overview and adds progress information
Mike Becker <universe@uap-core.de>
parents:
diff changeset
18
99
a369fb1b3aa2 cleanup ProjectsModule
Mike Becker <universe@uap-core.de>
parents: 95
diff changeset
19 public void setIssue(Issue issue) {
86
0a658e53177c improves issue overview and adds progress information
Mike Becker <universe@uap-core.de>
parents:
diff changeset
20 this.issue = issue;
0a658e53177c improves issue overview and adds progress information
Mike Becker <universe@uap-core.de>
parents:
diff changeset
21 }
0a658e53177c improves issue overview and adds progress information
Mike Becker <universe@uap-core.de>
parents:
diff changeset
22
0a658e53177c improves issue overview and adds progress information
Mike Becker <universe@uap-core.de>
parents:
diff changeset
23 public Issue getIssue() {
0a658e53177c improves issue overview and adds progress information
Mike Becker <universe@uap-core.de>
parents:
diff changeset
24 return issue;
0a658e53177c improves issue overview and adds progress information
Mike Becker <universe@uap-core.de>
parents:
diff changeset
25 }
0a658e53177c improves issue overview and adds progress information
Mike Becker <universe@uap-core.de>
parents:
diff changeset
26
124
ed2e7aef2a3e adds issue comments
Mike Becker <universe@uap-core.de>
parents: 99
diff changeset
27 public List<IssueComment> getComments() {
ed2e7aef2a3e adds issue comments
Mike Becker <universe@uap-core.de>
parents: 99
diff changeset
28 return comments;
ed2e7aef2a3e adds issue comments
Mike Becker <universe@uap-core.de>
parents: 99
diff changeset
29 }
ed2e7aef2a3e adds issue comments
Mike Becker <universe@uap-core.de>
parents: 99
diff changeset
30
ed2e7aef2a3e adds issue comments
Mike Becker <universe@uap-core.de>
parents: 99
diff changeset
31 public void setComments(List<IssueComment> comments) {
ed2e7aef2a3e adds issue comments
Mike Becker <universe@uap-core.de>
parents: 99
diff changeset
32 this.comments = comments;
ed2e7aef2a3e adds issue comments
Mike Becker <universe@uap-core.de>
parents: 99
diff changeset
33 }
162
2adc8623dd89 enables markdown support in issue descriptions and comments - fixes #10
Mike Becker <universe@uap-core.de>
parents: 146
diff changeset
34
2adc8623dd89 enables markdown support in issue descriptions and comments - fixes #10
Mike Becker <universe@uap-core.de>
parents: 146
diff changeset
35 public void processMarkdown() {
2adc8623dd89 enables markdown support in issue descriptions and comments - fixes #10
Mike Becker <universe@uap-core.de>
parents: 146
diff changeset
36 final var options = new MutableDataSet()
2adc8623dd89 enables markdown support in issue descriptions and comments - fixes #10
Mike Becker <universe@uap-core.de>
parents: 146
diff changeset
37 .set(Parser.EXTENSIONS, Arrays.asList(TablesExtension.create(), StrikethroughExtension.create()))
2adc8623dd89 enables markdown support in issue descriptions and comments - fixes #10
Mike Becker <universe@uap-core.de>
parents: 146
diff changeset
38 .toImmutable();
2adc8623dd89 enables markdown support in issue descriptions and comments - fixes #10
Mike Becker <universe@uap-core.de>
parents: 146
diff changeset
39 final var parser = Parser.builder(options).build();
2adc8623dd89 enables markdown support in issue descriptions and comments - fixes #10
Mike Becker <universe@uap-core.de>
parents: 146
diff changeset
40 final var renderer = HtmlRenderer.builder(options).build();
2adc8623dd89 enables markdown support in issue descriptions and comments - fixes #10
Mike Becker <universe@uap-core.de>
parents: 146
diff changeset
41
2adc8623dd89 enables markdown support in issue descriptions and comments - fixes #10
Mike Becker <universe@uap-core.de>
parents: 146
diff changeset
42 issue.setDescription(renderer.render(parser.parse(issue.getDescription())));
2adc8623dd89 enables markdown support in issue descriptions and comments - fixes #10
Mike Becker <universe@uap-core.de>
parents: 146
diff changeset
43 for (var comment : comments) {
2adc8623dd89 enables markdown support in issue descriptions and comments - fixes #10
Mike Becker <universe@uap-core.de>
parents: 146
diff changeset
44 comment.setComment(renderer.render(parser.parse(comment.getComment())));
2adc8623dd89 enables markdown support in issue descriptions and comments - fixes #10
Mike Becker <universe@uap-core.de>
parents: 146
diff changeset
45 }
2adc8623dd89 enables markdown support in issue descriptions and comments - fixes #10
Mike Becker <universe@uap-core.de>
parents: 146
diff changeset
46 }
86
0a658e53177c improves issue overview and adds progress information
Mike Becker <universe@uap-core.de>
parents:
diff changeset
47 }

mercurial