Skip to content

Commit 8583a29

Browse files
committed
Implement the addComment method
1 parent 3f46d3e commit 8583a29

1 file changed

Lines changed: 17 additions & 2 deletions

File tree

  • src/main/java/com/junichi11/netbeans/modules/github/issues/issue

src/main/java/com/junichi11/netbeans/modules/github/issues/issue/GitHubIssue.java

Lines changed: 17 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,7 @@
4141
*/
4242
package com.junichi11.netbeans.modules.github.issues.issue;
4343

44+
import com.junichi11.netbeans.modules.github.issues.GitHubIssueState;
4445
import com.junichi11.netbeans.modules.github.issues.repository.GitHubRepository;
4546
import java.beans.PropertyChangeListener;
4647
import java.beans.PropertyChangeSupport;
@@ -50,6 +51,8 @@
5051
import java.util.Date;
5152
import java.util.LinkedList;
5253
import java.util.List;
54+
import java.util.logging.Level;
55+
import java.util.logging.Logger;
5356
import javax.swing.JTable;
5457
import org.eclipse.egit.github.core.Comment;
5558
import org.eclipse.egit.github.core.Issue;
@@ -79,6 +82,7 @@ public final class GitHubIssue {
7982
public static final String LABEL_NAME_UPDATED = "github.issue.updated"; // NOI18N
8083
public static final String LABEL_NAME_CREATED_BY = "github.issue.created.by"; // NOI18N
8184
public static final String LABEL_NAME_ASSIGNEE = "github.issue.assignee"; // NOI18N
85+
private static final Logger LOGGER = Logger.getLogger(GitHubIssue.class.getName());
8286

8387
public GitHubIssue(GitHubRepository repository) {
8488
this(repository, null);
@@ -194,8 +198,19 @@ public void refreshIssue() {
194198
getRepository().refresh(this);
195199
}
196200

197-
public void addComment(String comment, boolean reresolveAsFixed) {
198-
// TODO addComment
201+
public void addComment(String comment, boolean resolveAsFixed) {
202+
if (resolveAsFixed) {
203+
// close an issue
204+
Issue i = getIssue();
205+
if (i != null) {
206+
GitHubIssueState state = GitHubIssueState.toEnum(i.getState());
207+
if (state != GitHubIssueState.OPEN) {
208+
LOGGER.log(Level.INFO, "This issue({0} #{1}) state is already closed.", new Object[]{i.getTitle(), i.getNumber()}); // NOI18N
209+
return;
210+
}
211+
GitHubIssueSupport.closeReopen(this);
212+
}
213+
}
199214
}
200215

201216
public void attachFile(File file, String string, boolean bln) {

0 commit comments

Comments
 (0)