Merge branch 'stable-2.11'

* stable-2.11:
  Set version to 2.11.1 and adapt to JGit API changes

Change-Id: I244821b2fb6f9685c10355ca36c6241ca705d440
Signed-off-by: Edwin Kempin <edwin.kempin@sap.com>
diff --git a/BUCK b/BUCK
index 15df39e..519dad4 100644
--- a/BUCK
+++ b/BUCK
@@ -9,7 +9,7 @@
     'Implementation-URL: https://gerrit.googlesource.com/plugins/reviewers-by-blame',
     'Gerrit-PluginName: reviewers-by-blame',
     'Gerrit-ApiType: plugin',
-    'Gerrit-ApiVersion: 2.11.1',
+    'Gerrit-ApiVersion: 2.12-SNAPSHOT',
     'Gerrit-Module: com.googlesource.gerrit.plugins.reviewersbyblame.ReviewersByBlameModule',
   ],
 )
diff --git a/VERSION b/VERSION
index 55773d3..9df7bf7 100644
--- a/VERSION
+++ b/VERSION
@@ -1,5 +1,5 @@
 # Used by BUCK to include "Implementation-Version" in plugin Manifest.
 # If this file doesn't exist the output of 'git describe' is used
 # instead.
-PLUGIN_VERSION = '2.11.1'
+PLUGIN_VERSION = '2.12-SNAPSHOT'
 
diff --git a/lib/gerrit/BUCK b/lib/gerrit/BUCK
index c86049a..19e67dc 100644
--- a/lib/gerrit/BUCK
+++ b/lib/gerrit/BUCK
@@ -1,7 +1,7 @@
 include_defs('//bucklets/maven_jar.bucklet')
 
-VER = '2.11.1'
-REPO = MAVEN_CENTRAL
+VER = '2.12-SNAPSHOT'
+REPO = MAVEN_LOCAL
 
 maven_jar(
   name = 'plugin-api',
diff --git a/src/main/java/com/googlesource/gerrit/plugins/reviewersbyblame/ChangeUpdatedListener.java b/src/main/java/com/googlesource/gerrit/plugins/reviewersbyblame/ChangeUpdatedListener.java
index d21d5c3..0452273 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/reviewersbyblame/ChangeUpdatedListener.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/reviewersbyblame/ChangeUpdatedListener.java
@@ -36,9 +36,6 @@
 import com.google.inject.Provider;
 import com.google.inject.ProvisionException;
 
-import org.eclipse.jgit.errors.IncorrectObjectTypeException;
-import org.eclipse.jgit.errors.MissingObjectException;
-import org.eclipse.jgit.errors.RepositoryNotFoundException;
 import org.eclipse.jgit.lib.ObjectId;
 import org.eclipse.jgit.lib.Repository;
 import org.eclipse.jgit.revwalk.RevCommit;
@@ -102,97 +99,74 @@
       return;
     }
 
-    Repository git;
-    try {
-      git = repoManager.openRepository(projectName);
-    } catch (RepositoryNotFoundException x) {
-      log.error(x.getMessage(), x);
-      return;
-    } catch (IOException x) {
-      log.error(x.getMessage(), x);
-      return;
-    }
+    try (final Repository git = repoManager.openRepository(projectName)) {
+      try (final RevWalk rw = new RevWalk(git)) {
+        final ReviewDb reviewDb = schemaFactory.open();
+        try {
+          Change.Id changeId = new Change.Id(Integer.parseInt(e.change.number));
+          PatchSet.Id psId = new PatchSet.Id(changeId, Integer.parseInt(e.patchSet.number));
+          PatchSet ps = reviewDb.patchSets().get(psId);
+          if (ps == null) {
+            log.warn("Patch set " + psId.get() + " not found.");
+            return;
+          }
 
-    final ReviewDb reviewDb;
-    final RevWalk rw = new RevWalk(git);
+          final Change change = reviewDb.changes().get(psId.getParentKey());
+          if (change == null) {
+            log.warn("Change " + changeId.get() + " not found.");
+            return;
+          }
 
-    try {
-      reviewDb = schemaFactory.open();
-      try {
-        Change.Id changeId = new Change.Id(Integer.parseInt(e.change.number));
-        PatchSet.Id psId = new PatchSet.Id(changeId, Integer.parseInt(e.patchSet.number));
-        PatchSet ps = reviewDb.patchSets().get(psId);
-        if (ps == null) {
-          log.warn("Patch set " + psId.get() + " not found.");
-          return;
-        }
+          final RevCommit commit =
+              rw.parseCommit(ObjectId.fromString(e.patchSet.revision));
 
-        final Change change = reviewDb.changes().get(psId.getParentKey());
-        if (change == null) {
-          log.warn("Change " + changeId.get() + " not found.");
-          return;
-        }
+          final Runnable task =
+              reviewersByBlameFactory.create(commit, change, ps, maxReviewers, git);
 
-        final RevCommit commit =
-            rw.parseCommit(ObjectId.fromString(e.patchSet.revision));
+          workQueue.getDefaultQueue().submit(new Runnable() {
+            @Override
+            public void run() {
+              RequestContext old = tl.setContext(new RequestContext() {
 
-        final Runnable task =
-            reviewersByBlameFactory.create(commit, change, ps, maxReviewers, git);
+                @Override
+                public CurrentUser getCurrentUser() {
+                  return identifiedUserFactory.create(change.getOwner());
+                }
 
-        workQueue.getDefaultQueue().submit(new Runnable() {
-          @Override
-          public void run() {
-            RequestContext old = tl.setContext(new RequestContext() {
-
-              @Override
-              public CurrentUser getCurrentUser() {
-                return identifiedUserFactory.create(change.getOwner());
-              }
-
-              @Override
-              public Provider<ReviewDb> getReviewDbProvider() {
-                return new Provider<ReviewDb>() {
-                  @Override
-                  public ReviewDb get() {
-                    if (db == null) {
-                      try {
-                        db = schemaFactory.open();
-                      } catch (OrmException e) {
-                        throw new ProvisionException("Cannot open ReviewDb", e);
+                @Override
+                public Provider<ReviewDb> getReviewDbProvider() {
+                  return new Provider<ReviewDb>() {
+                    @Override
+                    public ReviewDb get() {
+                      if (db == null) {
+                        try {
+                          db = schemaFactory.open();
+                        } catch (OrmException e) {
+                          throw new ProvisionException("Cannot open ReviewDb", e);
+                        }
                       }
+                      return db;
                     }
-                    return db;
-                  }
-                };
-              }
-            });
-            try {
-              task.run();
-            } finally {
-              tl.setContext(old);
-              if (db != null) {
-                db.close();
-                db = null;
+                  };
+                }
+              });
+              try {
+                task.run();
+              } finally {
+                tl.setContext(old);
+                if (db != null) {
+                  db.close();
+                  db = null;
+                }
               }
             }
-          }
-        });
-      } catch (OrmException x) {
-        log.error(x.getMessage(), x);
-      } catch (MissingObjectException x) {
-        log.error(x.getMessage(), x);
-      } catch (IncorrectObjectTypeException x) {
-        log.error(x.getMessage(), x);
-      } catch (IOException x) {
-        log.error(x.getMessage(), x);
-      } finally {
-        reviewDb.close();
+          });
+        } finally {
+          reviewDb.close();
+        }
       }
-    } catch (OrmException x) {
+    } catch (OrmException|IOException x) {
       log.error(x.getMessage(), x);
-    } finally {
-      rw.close();
-      git.close();
     }
   }