Set plugin API version to 2.11.1 and adapt to JGit API changes
Change-Id: I1ee9cafa635c2b54f232f3c695361dfec907c576
Signed-off-by: Edwin Kempin <edwin.kempin@sap.com>
diff --git a/pom.xml b/pom.xml
index 9005b6b..c74323b 100644
--- a/pom.xml
+++ b/pom.xml
@@ -21,7 +21,7 @@
<groupId>com.googlesource.gerrit.plugins.imagare</groupId>
<artifactId>imagare</artifactId>
<packaging>jar</packaging>
- <version>2.11</version>
+ <version>2.11.1</version>
<name>imagare</name>
<properties>
diff --git a/src/main/java/com/googlesource/gerrit/plugins/imagare/DeleteImage.java b/src/main/java/com/googlesource/gerrit/plugins/imagare/DeleteImage.java
index 675c99d..2805ba4 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/imagare/DeleteImage.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/imagare/DeleteImage.java
@@ -74,8 +74,7 @@
throw new AuthException("not allowed to delete image");
}
- Repository r = repoManager.openRepository(rsrc.getProject());
- try {
+ try (Repository r = repoManager.openRepository(rsrc.getProject())) {
if (!rsrc.getControl().canDelete()) {
validateOwnImage(r, rsrc.getRef());
}
@@ -108,8 +107,6 @@
log.error("Cannot delete " + rsrc.getRef() + ": " + result.name());
throw new ResourceConflictException("cannot delete branch: " + result.name());
}
- } finally {
- r.close();
}
return Response.none();
}
@@ -120,15 +117,12 @@
if (r == null) {
throw new ResourceNotFoundException(ref);
}
- RevWalk rw = new RevWalk(repo);
- try {
+ try (RevWalk rw = new RevWalk(repo)) {
RevCommit commit = rw.parseCommit(r.getObjectId());
if (!self.get().getNameEmail()
.equals(getNameEmail(commit.getCommitterIdent()))) {
throw new AuthException("not allowed to delete image");
}
- } finally {
- rw.release();
}
}
diff --git a/src/main/java/com/googlesource/gerrit/plugins/imagare/ImageServlet.java b/src/main/java/com/googlesource/gerrit/plugins/imagare/ImageServlet.java
index a3c2ed8..b8093bd 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/imagare/ImageServlet.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/imagare/ImageServlet.java
@@ -127,8 +127,7 @@
}
}
}
- Repository repo = repoManager.openRepository(key.project);
- try {
+ try (Repository repo = repoManager.openRepository(key.project)) {
ObjectId revId =
repo.resolve(rev != null ? rev : Constants.HEAD);
if (revId == null) {
@@ -137,15 +136,12 @@
}
if (ObjectId.isId(rev)) {
- RevWalk rw = new RevWalk(repo);
- try {
+ try (RevWalk rw = new RevWalk(repo)) {
RevCommit commit = rw.parseCommit(repo.resolve(rev));
if (!projectControl.canReadCommit(db.get(), rw, commit)) {
notFound(res);
return;
}
- } finally {
- rw.release();
}
}
@@ -164,12 +160,10 @@
return;
}
- RevWalk rw = new RevWalk(repo);
- try {
+ try (RevWalk rw = new RevWalk(repo)) {
RevCommit commit = rw.parseCommit(revId);
RevTree tree = commit.getTree();
- TreeWalk tw = new TreeWalk(repo);
- try {
+ try (TreeWalk tw = new TreeWalk(repo)) {
tw.addTree(tree);
tw.setRecursive(true);
tw.setFilter(PathFilter.create(key.file));
@@ -194,17 +188,11 @@
CacheHeaders.setCacheablePrivate(res, 7, TimeUnit.DAYS, false);
send(req, res, content, mimeType.toString(), commit.getCommitTime());
return;
- } finally {
- tw.release();
}
} catch (IOException e) {
notFound(res);
return;
- } finally {
- rw.release();
}
- } finally {
- repo.close();
}
} catch (RepositoryNotFoundException | NoSuchProjectException
| ResourceNotFoundException | AuthException | RevisionSyntaxException e) {
diff --git a/src/main/java/com/googlesource/gerrit/plugins/imagare/PostImage.java b/src/main/java/com/googlesource/gerrit/plugins/imagare/PostImage.java
index 31e38e0..c25a242 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/imagare/PostImage.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/imagare/PostImage.java
@@ -165,68 +165,56 @@
String ref = getRef(content, fileName);
RefControl rc = pc.controlForRef(ref);
- Repository repo = repoManager.openRepository(pc.getProject().getNameKey());
- try {
+ try (Repository repo = repoManager.openRepository(pc.getProject().getNameKey())) {
ObjectId commitId = repo.resolve(ref);
if (commitId != null) {
// this image exists already
return getUrl(pc.getProject().getNameKey(), ref, fileName);
}
- RevWalk rw = new RevWalk(repo);
- try {
- ObjectInserter oi = repo.newObjectInserter();
- try {
- ObjectId blobId = oi.insert(Constants.OBJ_BLOB, content);
- oi.flush();
+ try (RevWalk rw = new RevWalk(repo);
+ ObjectInserter oi = repo.newObjectInserter()) {
+ ObjectId blobId = oi.insert(Constants.OBJ_BLOB, content);
+ oi.flush();
- TreeFormatter tf = new TreeFormatter();
- tf.append(fileName, FileMode.REGULAR_FILE, blobId);
- ObjectId treeId = tf.insertTo(oi);
- oi.flush();
+ TreeFormatter tf = new TreeFormatter();
+ tf.append(fileName, FileMode.REGULAR_FILE, blobId);
+ ObjectId treeId = tf.insertTo(oi);
+ oi.flush();
- PersonIdent authorIdent =
- self.get().newCommitterIdent(myIdent.getWhen(), myIdent.getTimeZone());
- CommitBuilder cb = new CommitBuilder();
- cb.setTreeId(treeId);
- cb.setAuthor(authorIdent);
- cb.setCommitter(authorIdent);
- cb.setMessage("Image Upload");
+ PersonIdent authorIdent =
+ self.get().newCommitterIdent(myIdent.getWhen(), myIdent.getTimeZone());
+ CommitBuilder cb = new CommitBuilder();
+ cb.setTreeId(treeId);
+ cb.setAuthor(authorIdent);
+ cb.setCommitter(authorIdent);
+ cb.setMessage("Image Upload");
- commitId = oi.insert(cb);
- oi.flush();
+ commitId = oi.insert(cb);
+ oi.flush();
- if (!rc.canCreate(db.get(), rw, rw.parseCommit(commitId))) {
- throw new AuthException(String.format(
- "Project %s doesn't allow image upload.", pc.getProject().getName()));
- }
-
- RefUpdate ru = repo.updateRef(ref);
- ru.setExpectedOldObjectId(ObjectId.zeroId());
- ru.setNewObjectId(commitId);
- ru.disableRefLog();
- if (ru.update(rw) == RefUpdate.Result.NEW) {
- referenceUpdated.fire(pc.getProject().getNameKey(), ru);
- hooks.doRefUpdatedHook(new Branch.NameKey(pc.getProject()
- .getNameKey(), ref), ru, self.get().getAccount());
- } else {
- throw new IOException(String.format(
- "Failed to create ref %s in %s: %s", ref,
- pc.getProject().getName(), ru.getResult()));
- }
-
- return getUrl(pc.getProject().getNameKey(), ref, fileName);
- } finally {
- oi.release();
+ if (!rc.canCreate(db.get(), rw, rw.parseCommit(commitId))) {
+ throw new AuthException(String.format(
+ "Project %s doesn't allow image upload.", pc.getProject().getName()));
}
- } finally {
- rw.release();
- }
- } finally {
- repo.close();
- }
+ RefUpdate ru = repo.updateRef(ref);
+ ru.setExpectedOldObjectId(ObjectId.zeroId());
+ ru.setNewObjectId(commitId);
+ ru.disableRefLog();
+ if (ru.update(rw) == RefUpdate.Result.NEW) {
+ referenceUpdated.fire(pc.getProject().getNameKey(), ru);
+ hooks.doRefUpdatedHook(new Branch.NameKey(pc.getProject()
+ .getNameKey(), ref), ru, self.get().getAccount());
+ } else {
+ throw new IOException(String.format(
+ "Failed to create ref %s in %s: %s", ref,
+ pc.getProject().getName(), ru.getResult()));
+ }
+ return getUrl(pc.getProject().getNameKey(), ref, fileName);
+ }
+ }
}
private String getRef(byte[] content, String fileName) {