27 import org.openjdk.skara.issuetracker.*;
28 import org.openjdk.skara.vcs.Hash;
29
30 import java.io.*;
31 import java.nio.charset.StandardCharsets;
32 import java.nio.file.Path;
33 import java.security.*;
34 import java.time.*;
35 import java.util.*;
36 import java.util.function.Consumer;
37 import java.util.logging.Logger;
38 import java.util.regex.Pattern;
39 import java.util.stream.Collectors;
40
41 class CheckWorkItem extends PullRequestWorkItem {
42 private final HostedRepository censusRepo;
43 private final String censusRef;
44 private final Map<String, String> blockingLabels;
45 private final IssueProject issueProject;
46
47 private final Pattern metadataComments = Pattern.compile("<!-- (?:(add|remove) contributor)|(?:summary: ')");
48 private final Logger log = Logger.getLogger("org.openjdk.skara.bots.pr");
49
50 CheckWorkItem(PullRequest pr, HostedRepository censusRepo, String censusRef, Map<String, String> blockingLabels,
51 Consumer<RuntimeException> errorHandler, IssueProject issueProject) {
52 super(pr, errorHandler);
53 this.censusRepo = censusRepo;
54 this.censusRef = censusRef;
55 this.blockingLabels = blockingLabels;
56 this.issueProject = issueProject;
57 }
58
59 private String encodeReviewer(HostUser reviewer, CensusInstance censusInstance) {
60 var census = censusInstance.census();
61 var project = censusInstance.project();
62 var namespace = censusInstance.namespace();
63 var contributor = namespace.get(reviewer.id());
64 if (contributor == null) {
65 return "unknown-" + reviewer.id();
66 } else {
67 var censusVersion = census.version().format();
|
27 import org.openjdk.skara.issuetracker.*;
28 import org.openjdk.skara.vcs.Hash;
29
30 import java.io.*;
31 import java.nio.charset.StandardCharsets;
32 import java.nio.file.Path;
33 import java.security.*;
34 import java.time.*;
35 import java.util.*;
36 import java.util.function.Consumer;
37 import java.util.logging.Logger;
38 import java.util.regex.Pattern;
39 import java.util.stream.Collectors;
40
41 class CheckWorkItem extends PullRequestWorkItem {
42 private final HostedRepository censusRepo;
43 private final String censusRef;
44 private final Map<String, String> blockingLabels;
45 private final IssueProject issueProject;
46
47 private final Pattern metadataComments = Pattern.compile("<!-- (?:(add|remove) contributor)|(?:summary: ')|(?:solves: ')");
48 private final Logger log = Logger.getLogger("org.openjdk.skara.bots.pr");
49
50 CheckWorkItem(PullRequest pr, HostedRepository censusRepo, String censusRef, Map<String, String> blockingLabels,
51 Consumer<RuntimeException> errorHandler, IssueProject issueProject) {
52 super(pr, errorHandler);
53 this.censusRepo = censusRepo;
54 this.censusRef = censusRef;
55 this.blockingLabels = blockingLabels;
56 this.issueProject = issueProject;
57 }
58
59 private String encodeReviewer(HostUser reviewer, CensusInstance censusInstance) {
60 var census = censusInstance.census();
61 var project = censusInstance.project();
62 var namespace = censusInstance.namespace();
63 var contributor = namespace.get(reviewer.id());
64 if (contributor == null) {
65 return "unknown-" + reviewer.id();
66 } else {
67 var censusVersion = census.version().format();
|