diff options
author | Kevin Sawicki | 2011-05-24 16:27:47 +0000 |
---|---|---|
committer | Kevin Sawicki | 2011-05-24 16:27:47 +0000 |
commit | 84adc09c0984fef29f2404de48a66a3f75280b10 (patch) | |
tree | d26434053f4b026d8e5e8b8d0b53566a4f911c58 /org.eclipse.mylyn.github.core/src | |
parent | be9cd4654e45954307b8f99e22f294bdf0bec8e2 (diff) | |
download | egit-github-84adc09c0984fef29f2404de48a66a3f75280b10.tar.gz egit-github-84adc09c0984fef29f2404de48a66a3f75280b10.tar.xz egit-github-84adc09c0984fef29f2404de48a66a3f75280b10.zip |
Support setting a milestone when creating new issues.
Bug: 346940
Change-Id: Ice40a5a39c3dd394dc92cd24a671624fbe412fa7
Signed-off-by: Kevin Sawicki <kevin@github.com>
Diffstat (limited to 'org.eclipse.mylyn.github.core/src')
2 files changed, 8 insertions, 5 deletions
diff --git a/org.eclipse.mylyn.github.core/src/org/eclipse/mylyn/internal/github/core/issue/IssueConnector.java b/org.eclipse.mylyn.github.core/src/org/eclipse/mylyn/internal/github/core/issue/IssueConnector.java index 779778b1..d74fce97 100644 --- a/org.eclipse.mylyn.github.core/src/org/eclipse/mylyn/internal/github/core/issue/IssueConnector.java +++ b/org.eclipse.mylyn.github.core/src/org/eclipse/mylyn/internal/github/core/issue/IssueConnector.java @@ -38,6 +38,7 @@ import org.eclipse.egit.github.core.service.IssueService; import org.eclipse.egit.github.core.service.LabelService; import org.eclipse.egit.github.core.service.MilestoneService; import org.eclipse.egit.github.core.util.LabelComparator; +import org.eclipse.egit.github.core.util.MilestoneComparator; import org.eclipse.mylyn.commons.net.AuthenticationCredentials; import org.eclipse.mylyn.commons.net.AuthenticationType; import org.eclipse.mylyn.commons.net.Policy; @@ -168,6 +169,7 @@ public class IssueConnector extends AbstractRepositoryConnector { repo.getName(), IssueService.STATE_OPEN)); milestones.addAll(service.getMilestones(repo.getOwner(), repo.getName(), IssueService.STATE_CLOSED)); + Collections.sort(milestones, new MilestoneComparator()); this.repositoryMilestones.put(repository, milestones); return milestones; } catch (IOException e) { @@ -185,9 +187,8 @@ public class IssueConnector extends AbstractRepositoryConnector { Assert.isNotNull(repository, "Repository cannot be null"); //$NON-NLS-1$ List<Milestone> milestones = new LinkedList<Milestone>(); List<Milestone> cached = this.repositoryMilestones.get(repository); - if (cached != null) { + if (cached != null) milestones.addAll(cached); - } return milestones; } diff --git a/org.eclipse.mylyn.github.core/src/org/eclipse/mylyn/internal/github/core/issue/IssueTaskDataHandler.java b/org.eclipse.mylyn.github.core/src/org/eclipse/mylyn/internal/github/core/issue/IssueTaskDataHandler.java index c2363278..ec941e76 100644 --- a/org.eclipse.mylyn.github.core/src/org/eclipse/mylyn/internal/github/core/issue/IssueTaskDataHandler.java +++ b/org.eclipse.mylyn.github.core/src/org/eclipse/mylyn/internal/github/core/issue/IssueTaskDataHandler.java @@ -110,7 +110,7 @@ public class IssueTaskDataHandler extends AbstractTaskDataHandler { createLabels(repository, data, issue); - createMilestone(repository, data, issue); + createMilestones(repository, data, issue); PullRequest pr = issue.getPullRequest(); String prDiffUrl = pr != null ? pr.getDiffUrl() : null; @@ -119,7 +119,7 @@ public class IssueTaskDataHandler extends AbstractTaskDataHandler { return data; } - private void createMilestone(TaskRepository repository, TaskData data, + private void createMilestones(TaskRepository repository, TaskData data, Issue issue) { Milestone current = issue.getMilestone(); String number = current != null ? Integer.toString(current.getNumber()) @@ -319,7 +319,9 @@ public class IssueTaskDataHandler extends AbstractTaskDataHandler { for (IssueAttribute attr : IssueAttribute.values()) if (attr.isInitTask()) createAttribute(data, attr, (String) null); - createLabels(repository, data, new Issue()); + Issue dummy = new Issue(); + createLabels(repository, data, dummy); + createMilestones(repository, data, dummy); return true; } |