Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'org.eclipse.mylyn.gerrit.core/src/org/eclipse/mylyn/internal/gerrit/core/remote/GerritReviewRemoteFactory.java')
-rw-r--r--org.eclipse.mylyn.gerrit.core/src/org/eclipse/mylyn/internal/gerrit/core/remote/GerritReviewRemoteFactory.java29
1 files changed, 17 insertions, 12 deletions
diff --git a/org.eclipse.mylyn.gerrit.core/src/org/eclipse/mylyn/internal/gerrit/core/remote/GerritReviewRemoteFactory.java b/org.eclipse.mylyn.gerrit.core/src/org/eclipse/mylyn/internal/gerrit/core/remote/GerritReviewRemoteFactory.java
index 7952bb517..e591f9c07 100644
--- a/org.eclipse.mylyn.gerrit.core/src/org/eclipse/mylyn/internal/gerrit/core/remote/GerritReviewRemoteFactory.java
+++ b/org.eclipse.mylyn.gerrit.core/src/org/eclipse/mylyn/internal/gerrit/core/remote/GerritReviewRemoteFactory.java
@@ -55,6 +55,7 @@ import com.google.gerrit.common.data.ChangeInfo;
import com.google.gerrit.common.data.PatchSetDetail;
import com.google.gerrit.reviewdb.Account;
import com.google.gerrit.reviewdb.Change;
+import com.google.gerrit.reviewdb.Change.Status;
import com.google.gerrit.reviewdb.ChangeMessage;
import com.google.gerrit.reviewdb.PatchSetApproval;
import com.google.gerrit.reviewdb.UserIdentity;
@@ -134,7 +135,7 @@ public class GerritReviewRemoteFactory extends ReviewRemoteFactory<GerritChange,
} catch (GerritException e) {
throw GerritCorePlugin.getDefault()
.getConnector()
- .toCoreException(parent.getTaskRepository(), "Problem while retrieving Gerrit review.", e);
+ .toCoreException(parent.getTaskRepository(), "Problem while retrieving Gerrit review.", e); //$NON-NLS-1$
}
}
@@ -248,7 +249,7 @@ public class GerritReviewRemoteFactory extends ReviewRemoteFactory<GerritChange,
//We force a pull here, which is safe because there isn't any actual client API invocation
consumer.pull(true, new NullProgressMonitor());
} catch (CoreException e) {
- throw new RuntimeException("Internal Exception. Unexpected state.", e);
+ throw new RuntimeException("Internal Exception. Unexpected state.", e); //$NON-NLS-1$
}
if (patchIndex++ < oldPatchCount) {
consumer.release();
@@ -334,7 +335,7 @@ public class GerritReviewRemoteFactory extends ReviewRemoteFactory<GerritChange,
IUser reviewer = getGerritProvider().createUser(parent, detail.getAccounts(),
remoteApproval.getAccount());
if (reviewer == null) {
- throw new RuntimeException("Internal Error, no reviewer found for: " + remoteApproval.getAccount());
+ throw new RuntimeException("Internal Error, no reviewer found for: " + remoteApproval.getAccount()); //$NON-NLS-1$
}
IReviewerEntry reviewerEntry = review.getReviewerApprovals().get(reviewer);
if (reviewerEntry == null) {
@@ -366,18 +367,22 @@ public class GerritReviewRemoteFactory extends ReviewRemoteFactory<GerritChange,
for (Label label : record.getLabels()) {
IApprovalType approvalType = typeForName.get(label.getLabel());
if (approvalType == null) {
- throw new RuntimeException("Internal Error, no approval type found for: " + label.getLabel());
+ if (detail.getChange().getStatus() == Status.ABANDONED) {
+ // typeForName can be empty for an abandoned change as it no longer provides approval types info
+ continue;
+ }
+ throw new RuntimeException("Internal Error, no approval type found for: " + label.getLabel()); //$NON-NLS-1$
}
IRequirementEntry requirementEntry = IReviewsFactory.INSTANCE.createRequirementEntry();
- if (label.getStatus().equals("OK")) {
+ if (label.getStatus().equals("OK")) { //$NON-NLS-1$
requirementEntry.setStatus(RequirementStatus.SATISFIED);
- } else if (label.getStatus().equals("NEED")) {
+ } else if (label.getStatus().equals("NEED")) { //$NON-NLS-1$
requirementEntry.setStatus(RequirementStatus.NOT_SATISFIED);
- } else if (label.getStatus().equals("REJECT")) {
+ } else if (label.getStatus().equals("REJECT")) { //$NON-NLS-1$
requirementEntry.setStatus(RequirementStatus.REJECTED);
- } else if (label.getStatus().equals("MAY")) {
+ } else if (label.getStatus().equals("MAY")) { //$NON-NLS-1$
requirementEntry.setStatus(RequirementStatus.OPTIONAL);
- } else if (label.getStatus().equals("IMPOSSIBLE")) {
+ } else if (label.getStatus().equals("IMPOSSIBLE")) { //$NON-NLS-1$
requirementEntry.setStatus(RequirementStatus.ERROR);
}
if (label.getAppliedBy() != null) {
@@ -406,7 +411,7 @@ public class GerritReviewRemoteFactory extends ReviewRemoteFactory<GerritChange,
case ABANDONED:
return ReviewStatus.ABANDONED;
default:
- GerritCorePlugin.logError("Internal Error: unexpected change status: " + gerritStatus, new Exception());
+ GerritCorePlugin.logError("Internal Error: unexpected change status: " + gerritStatus, new Exception()); //$NON-NLS-1$
return null;
}
}
@@ -422,7 +427,7 @@ public class GerritReviewRemoteFactory extends ReviewRemoteFactory<GerritChange,
for (ChangeInfo remoteChange : remoteChanges) {
final IChange localChange = IReviewsFactory.INSTANCE.createChange();
localChange.setKey(remoteChange.getKey().get());
- localChange.setId(remoteChange.getId().get() + "");
+ localChange.setId(Integer.toString(remoteChange.getId().get()));
AccountInfo remoteOwner = detail.getAccounts().get(remoteChange.getOwner());
IUser owner = getGerritProvider().createUser(group, detail.getAccounts(), remoteOwner.getId());
localChange.setOwner(owner);
@@ -435,7 +440,7 @@ public class GerritReviewRemoteFactory extends ReviewRemoteFactory<GerritChange,
@Override
public String getRemoteKey(GerritChange remoteObject) {
- return remoteObject.getChangeDetail().getChange().getId().get() + "";
+ return Integer.toString(remoteObject.getChangeDetail().getChange().getId().get());
}
@Override

Back to the top