|
1 | 1 | package io.quarkiverse.githubapp.runtime.github; |
2 | 2 |
|
| 3 | +import java.io.IOException; |
3 | 4 | import java.util.Optional; |
4 | 5 |
|
5 | 6 | import org.kohsuke.github.GHEventPayload; |
@@ -75,9 +76,47 @@ public static Optional<String> getContext(GHEventPayload eventPayload) { |
75 | 76 | if (eventPayload instanceof GHEventPayload.Status) { |
76 | 77 | return Optional.of(((GHEventPayload.Status) eventPayload).getDescription()); |
77 | 78 | } |
| 79 | + if (eventPayload instanceof GHEventPayload.WorkflowDispatch) { |
| 80 | + return Optional.of(((GHEventPayload.WorkflowDispatch) eventPayload).getRepository().getHtmlUrl().toString()); |
| 81 | + } |
| 82 | + if (eventPayload instanceof GHEventPayload.WorkflowRun) { |
| 83 | + // unfortunately, getHtmlUrl() for workflow runs can throw an exception |
| 84 | + try { |
| 85 | + return Optional.of(((GHEventPayload.WorkflowRun) eventPayload).getWorkflowRun().getHtmlUrl().toString()); |
| 86 | + } catch (IOException e) { |
| 87 | + return Optional.of(((GHEventPayload.WorkflowRun) eventPayload).getRepository().getHtmlUrl().toString()); |
| 88 | + } |
| 89 | + } |
| 90 | + if (eventPayload instanceof GHEventPayload.WorkflowJob) { |
| 91 | + return Optional.of(((GHEventPayload.WorkflowJob) eventPayload).getWorkflowJob().getHtmlUrl().toString()); |
| 92 | + } |
| 93 | + if (eventPayload instanceof GHEventPayload.Label) { |
| 94 | + return Optional.of(((GHEventPayload.Label) eventPayload).getRepository().getHtmlUrl().toString()); |
| 95 | + } |
78 | 96 | if (eventPayload instanceof GHEventPayload.Discussion) { |
79 | 97 | return Optional.of(((GHEventPayload.Discussion) eventPayload).getDiscussion().getHtmlUrl().toString()); |
80 | 98 | } |
| 99 | + if (eventPayload instanceof GHEventPayload.DiscussionComment) { |
| 100 | + return Optional.of(((GHEventPayload.DiscussionComment) eventPayload).getComment().getHtmlUrl().toString()); |
| 101 | + } |
| 102 | + if (eventPayload instanceof GHEventPayload.Star) { |
| 103 | + return Optional.of(((GHEventPayload.Star) eventPayload).getRepository().getHtmlUrl().toString()); |
| 104 | + } |
| 105 | + if (eventPayload instanceof GHEventPayload.ProjectsV2Item) { |
| 106 | + return Optional.of(((GHEventPayload.ProjectsV2Item) eventPayload).getRepository().getHtmlUrl().toString()); |
| 107 | + } |
| 108 | + if (eventPayload instanceof GHEventPayload.TeamAdd) { |
| 109 | + return Optional.of(((GHEventPayload.TeamAdd) eventPayload).getTeam().getHtmlUrl().toString()); |
| 110 | + } |
| 111 | + if (eventPayload instanceof GHEventPayload.Team) { |
| 112 | + return Optional.of(((GHEventPayload.Team) eventPayload).getTeam().getHtmlUrl().toString()); |
| 113 | + } |
| 114 | + if (eventPayload instanceof GHEventPayload.Member) { |
| 115 | + return Optional.of(((GHEventPayload.Member) eventPayload).getRepository().getHtmlUrl().toString()); |
| 116 | + } |
| 117 | + if (eventPayload instanceof GHEventPayload.Membership) { |
| 118 | + return Optional.of(((GHEventPayload.Membership) eventPayload).getTeam().getHtmlUrl().toString()); |
| 119 | + } |
81 | 120 |
|
82 | 121 | return Optional.empty(); |
83 | 122 | } |
|
0 commit comments