Convert to auto-closeable RevWalk
Change-Id: I7ff7780df86a13c2d9396dcb93c256daffc848a3
diff --git a/github-plugin/src/main/java/com/googlesource/gerrit/plugins/github/git/PullRequestCreateChange.java b/github-plugin/src/main/java/com/googlesource/gerrit/plugins/github/git/PullRequestCreateChange.java
index 88a32fd..169f92a 100644
--- a/github-plugin/src/main/java/com/googlesource/gerrit/plugins/github/git/PullRequestCreateChange.java
+++ b/github-plugin/src/main/java/com/googlesource/gerrit/plugins/github/git/PullRequestCreateChange.java
@@ -181,7 +181,7 @@
doValidation));
}
} finally {
- revWalk.release();
+ revWalk.close();
if (newChange == null) {
db.rollback();
}
diff --git a/github-plugin/src/main/java/com/googlesource/gerrit/plugins/github/git/PullRequestImportJob.java b/github-plugin/src/main/java/com/googlesource/gerrit/plugins/github/git/PullRequestImportJob.java
index b13cc13..9834c2c 100644
--- a/github-plugin/src/main/java/com/googlesource/gerrit/plugins/github/git/PullRequestImportJob.java
+++ b/github-plugin/src/main/java/com/googlesource/gerrit/plugins/github/git/PullRequestImportJob.java
@@ -173,34 +173,35 @@
ObjectId baseObjectId = ObjectId.fromString(pr.getBase().getSha());
ObjectId prHeadObjectId = ObjectId.fromString(pr.getHead().getSha());
- RevWalk walk = new RevWalk(gitRepo);
- walk.markUninteresting(walk.lookupCommit(baseObjectId));
- walk.markStart(walk.lookupCommit(prHeadObjectId));
- walk.sort(RevSort.REVERSE);
+ try (RevWalk walk = new RevWalk(gitRepo)) {
+ walk.markUninteresting(walk.lookupCommit(baseObjectId));
+ walk.markStart(walk.lookupCommit(prHeadObjectId));
+ walk.sort(RevSort.REVERSE);
- int patchNr = 1;
- for (GHPullRequestCommitDetail ghCommitDetail : pr.listCommits()) {
- status.update(Code.SYNC, "Patch #" + patchNr, "Patch#" + patchNr
- + ": Inserting PullRequest into Gerrit");
- RevCommit revCommit =
- walk.parseCommit(ObjectId.fromString(ghCommitDetail.getSha()));
+ int patchNr = 1;
+ for (GHPullRequestCommitDetail ghCommitDetail : pr.listCommits()) {
+ status.update(Code.SYNC, "Patch #" + patchNr, "Patch#" + patchNr
+ + ": Inserting PullRequest into Gerrit");
+ RevCommit revCommit =
+ walk.parseCommit(ObjectId.fromString(ghCommitDetail.getSha()));
- GHUser prUser = pr.getUser();
- GitUser commitAuthor = ghCommitDetail.getCommit().getAuthor();
- GitHubUser gitHubUser = GitHubUser.from(prUser, commitAuthor);
+ GHUser prUser = pr.getUser();
+ GitUser commitAuthor = ghCommitDetail.getCommit().getAuthor();
+ GitHubUser gitHubUser = GitHubUser.from(prUser, commitAuthor);
- Account.Id pullRequestOwner = getOrRegisterAccount(db, gitHubUser);
- Id changeId =
- createChange.addCommitToChange(db, project, gitRepo,
- destinationBranch, pullRequestOwner, revCommit,
- getChangeMessage(pr),
- String.format(TOPIC_FORMAT, pr.getNumber()), false);
- if (changeId != null) {
- prChanges.add(changeId);
+ Account.Id pullRequestOwner = getOrRegisterAccount(db, gitHubUser);
+ Id changeId =
+ createChange.addCommitToChange(db, project, gitRepo,
+ destinationBranch, pullRequestOwner, revCommit,
+ getChangeMessage(pr),
+ String.format(TOPIC_FORMAT, pr.getNumber()), false);
+ if (changeId != null) {
+ prChanges.add(changeId);
+ }
}
- }
- return prChanges;
+ return prChanges;
+ }
}
private com.google.gerrit.reviewdb.client.Account.Id getOrRegisterAccount(
diff --git a/github-plugin/src/main/java/com/googlesource/gerrit/plugins/github/wizard/PullRequestListController.java b/github-plugin/src/main/java/com/googlesource/gerrit/plugins/github/wizard/PullRequestListController.java
index c661242..2d34231 100644
--- a/github-plugin/src/main/java/com/googlesource/gerrit/plugins/github/wizard/PullRequestListController.java
+++ b/github-plugin/src/main/java/com/googlesource/gerrit/plugins/github/wizard/PullRequestListController.java
@@ -205,30 +205,31 @@
Repository gitRepo, GHPullRequest ghPullRequest)
throws IncorrectObjectTypeException, IOException {
boolean pullRequestToImport = false;
- RevWalk gitWalk = new RevWalk(gitRepo);
- for (GHPullRequestCommitDetail pullRequestCommit : ghPullRequest
- .listCommits()) {
- ObjectId pullRequestHeadObjectId =
- ObjectId.fromString(pullRequestCommit.getSha());
+ try (RevWalk gitWalk = new RevWalk(gitRepo)) {
+ for (GHPullRequestCommitDetail pullRequestCommit : ghPullRequest
+ .listCommits()) {
+ ObjectId pullRequestHeadObjectId =
+ ObjectId.fromString(pullRequestCommit.getSha());
- try {
- gitWalk.parseCommit(pullRequestHeadObjectId);
-
- ResultSet<PatchSet> patchSets;
try {
- patchSets =
- db.patchSets().byRevision(new RevId(pullRequestCommit.getSha()));
- } catch (OrmException e) {
- LOG.error("Error whilst fetching patch-sets from DB associated to commit "
- + pullRequestCommit.getSha());
- return false;
+ gitWalk.parseCommit(pullRequestHeadObjectId);
+
+ ResultSet<PatchSet> patchSets;
+ try {
+ patchSets =
+ db.patchSets().byRevision(new RevId(pullRequestCommit.getSha()));
+ } catch (OrmException e) {
+ LOG.error("Error whilst fetching patch-sets from DB associated to commit "
+ + pullRequestCommit.getSha());
+ return false;
+ }
+ pullRequestToImport = !patchSets.iterator().hasNext();
+ patchSets.close();
+ } catch (MissingObjectException e) {
+ pullRequestToImport = true;
}
- pullRequestToImport = !patchSets.iterator().hasNext();
- patchSets.close();
- } catch (MissingObjectException e) {
- pullRequestToImport = true;
}
+ return pullRequestToImport;
}
- return pullRequestToImport;
}
}