Merge branch 'stable-2.16' into stable-3.0

* stable-2.16:
  Upgrade bazlets to latest stable-2.16 to build with 2.16.21 API
  Upgrade bazlets to latest stable-2.15 to build with 2.15.19 API
  Upgrade bazlets to latest stable-2.14 to build with 2.14.21 API

Change-Id: I25bef88df7a8982e978ce9969f76d8dd9718e45f
diff --git a/WORKSPACE b/WORKSPACE
index 47420be..71112b0 100644
--- a/WORKSPACE
+++ b/WORKSPACE
@@ -3,7 +3,7 @@
 load("//:bazlets.bzl", "load_bazlets")
 
 load_bazlets(
-    commit = "fff6f20bb2eceaf872a8acf8ad51471c25a82d38",
+    commit = "15eae2ee5cd524a204bd62c3d59bfd0ce86916ec",
     #local_path = "/home/<user>/projects/bazlets",
 )
 
diff --git a/external_plugin_deps.bzl b/external_plugin_deps.bzl
index 8f9e7d2..b272d6c 100644
--- a/external_plugin_deps.bzl
+++ b/external_plugin_deps.bzl
@@ -1,13 +1,13 @@
 load("//tools/bzl:maven_jar.bzl", "GERRIT", "MAVEN_CENTRAL", "MAVEN_LOCAL", "maven_jar")
 
-JGIT_VERSION = "5.1.12.201910011832-r"
+JGIT_VERSION = "5.3.6.201910020505-r"
 REPO = MAVEN_CENTRAL
 
 def external_plugin_deps():
     maven_jar(
         name = "jgit-http-apache",
         artifact = "org.eclipse.jgit:org.eclipse.jgit.http.apache:" + JGIT_VERSION,
-        sha1 = "92ad62799dd7eb02cc8805f2e297714cc3bb5149",
+        sha1 = "668c69822b4f54b430dd9880cc2bb13f13aa88d1",
         repository = REPO,
         unsign = True,
         exclude = [
@@ -19,7 +19,7 @@
     maven_jar(
         name = "jgit-lfs",
         artifact = "org.eclipse.jgit:org.eclipse.jgit.lfs:" + JGIT_VERSION,
-        sha1 = "bb4972c6e127c615c4b9183f95414ff2a20916cf",
+        sha1 = "153e32275cb0ccfd7f6dba89cf58392d42e16c3a",
         repository = REPO,
         unsign = True,
         exclude = [
@@ -31,7 +31,7 @@
     maven_jar(
         name = "jgit-lfs-server",
         artifact = "org.eclipse.jgit:org.eclipse.jgit.lfs.server:" + JGIT_VERSION,
-        sha1 = "b2d1e48f9daddc09e072e422c151384e845c1612",
+        sha1 = "e37339c77dd00d96269e280d582c742c424b908f",
         repository = REPO,
         unsign = True,
         exclude = [
diff --git a/src/main/java/com/googlesource/gerrit/plugins/lfs/HttpModule.java b/src/main/java/com/googlesource/gerrit/plugins/lfs/HttpModule.java
index 2bd7091..aabbd69 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/lfs/HttpModule.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/lfs/HttpModule.java
@@ -62,11 +62,6 @@
       populateRepository(backend);
     }
 
-    // Only for GWT-UI
-    DynamicSet.bind(binder(), WebUiPlugin.class)
-        .toInstance(new JavaScriptPlugin("lfs-project-info.js"));
-
-    // Only for PolyGerrit-UI
     DynamicSet.bind(binder(), WebUiPlugin.class).toInstance(new JavaScriptPlugin("gr-lfs.html"));
   }
 
diff --git a/src/main/java/com/googlesource/gerrit/plugins/lfs/LfsApiServlet.java b/src/main/java/com/googlesource/gerrit/plugins/lfs/LfsApiServlet.java
index 8982dbe..992dada 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/lfs/LfsApiServlet.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/lfs/LfsApiServlet.java
@@ -22,9 +22,9 @@
 import static com.google.gerrit.server.permissions.ProjectPermission.PUSH_AT_LEAST_ONE_REF;
 
 import com.google.common.flogger.FluentLogger;
-import com.google.gerrit.common.ProjectUtil;
 import com.google.gerrit.reviewdb.client.Project;
 import com.google.gerrit.server.CurrentUser;
+import com.google.gerrit.server.ProjectUtil;
 import com.google.gerrit.server.permissions.PermissionBackend;
 import com.google.gerrit.server.project.ProjectCache;
 import com.google.gerrit.server.project.ProjectState;
@@ -81,7 +81,7 @@
       throw new LfsException("no repository at " + pathInfo);
     }
     String projName = matcher.group(1);
-    Project.NameKey project = Project.NameKey.parse(ProjectUtil.stripGitSuffix(projName));
+    Project.NameKey project = Project.nameKey(ProjectUtil.stripGitSuffix(projName));
     ProjectState state = projectCache.get(project);
     if (state == null || state.getProject().getState() == HIDDEN) {
       throw new LfsRepositoryNotFound(project.get());
diff --git a/src/main/java/com/googlesource/gerrit/plugins/lfs/locks/LfsLocksAction.java b/src/main/java/com/googlesource/gerrit/plugins/lfs/locks/LfsLocksAction.java
index 4b6afb4..32536f7 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/lfs/locks/LfsLocksAction.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/lfs/locks/LfsLocksAction.java
@@ -22,10 +22,10 @@
 import static org.eclipse.jgit.util.HttpSupport.HDR_AUTHORIZATION;
 
 import com.google.common.flogger.FluentLogger;
-import com.google.gerrit.common.ProjectUtil;
 import com.google.gerrit.extensions.restapi.AuthException;
 import com.google.gerrit.reviewdb.client.Project;
 import com.google.gerrit.server.CurrentUser;
+import com.google.gerrit.server.ProjectUtil;
 import com.google.gerrit.server.permissions.PermissionBackend;
 import com.google.gerrit.server.permissions.PermissionBackend.ForProject;
 import com.google.gerrit.server.permissions.PermissionBackendException;
@@ -100,7 +100,7 @@
       throws LfsException, IOException;
 
   protected ProjectState getProject(String name) throws LfsRepositoryNotFound {
-    Project.NameKey project = Project.NameKey.parse(ProjectUtil.stripGitSuffix(name));
+    Project.NameKey project = Project.nameKey(ProjectUtil.stripGitSuffix(name));
     ProjectState state = projectCache.get(project);
     if (state == null || state.getProject().getState() == HIDDEN) {
       throw new LfsRepositoryNotFound(project.get());
diff --git a/src/main/resources/static/gr-lfs.html b/src/main/resources/static/gr-lfs.html
index 8493051..1a82aa8 100644
--- a/src/main/resources/static/gr-lfs.html
+++ b/src/main/resources/static/gr-lfs.html
@@ -20,8 +20,6 @@
 <dom-module id="gr-lfs">
   <script>
     Gerrit.install(plugin => {
-      if (!window.Polymer) { return; }
-
       plugin.registerCustomComponent('repo-config', 'gr-lfs-project-info');
     });
   </script>
diff --git a/src/main/resources/static/lfs-project-info.js b/src/main/resources/static/lfs-project-info.js
deleted file mode 100644
index f81f975..0000000
--- a/src/main/resources/static/lfs-project-info.js
+++ /dev/null
@@ -1,74 +0,0 @@
-// Copyright (C) 2016 The Android Open Source Project
-//
-// Licensed under the Apache License, Version 2.0 (the "License");
-// you may not use this file except in compliance with the License.
-// You may obtain a copy of the License at
-//
-// http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing, software
-// distributed under the License is distributed on an "AS IS" BASIS,
-// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// See the License for the specific language governing permissions and
-// limitations under the License.
-
-Gerrit.install(function(self) {
-
-  if (window.Polymer) { return; }
-
-  // The code below is only used by the GWT-UI
-
-  function toUpperCamel(str) {
-    var words = str.split('_');
-    for (i=0; i<words.length; i++) {
-      words[i] = words[i].charAt(0).toUpperCase() + words[i].slice(1);
-    }
-    return words.join(' ');
-  }
-
-  function createRow(doc, name, value) {
-    var tr = doc.createElement('tr');
-    var td = doc.createElement('td');
-    td.appendChild(doc.createTextNode(toUpperCamel(name) + ':'));
-    tr.appendChild(td);
-    td = doc.createElement('td');
-    td.appendChild(doc.createTextNode(value));
-    tr.appendChild(td);
-    return tr;
-  }
-
-  function onProjectInfo(panel) {
-    var url = 'projects/'
-      + encodeURI(panel.p.PROJECT_NAME).replace(/\//g, '%2F') //escape slashes
-      + '/' + this.pluginName + '~'
-      + 'lfs:config-project';
-
-    Gerrit.get(url, function(lfs) {
-      // Don't show LFS header if nothing is configured
-      if (Object.getOwnPropertyNames(lfs).length < 1) {
-        return;
-      }
-
-      var doc = document;
-      // create header
-      var td = doc.createElement('td');
-      td.appendChild(Gerrit.html(
-        '<div class=\"smallHeading\">LFS Options</div>'));
-      var tr = doc.createElement('tr');
-      tr.appendChild(td);
-      var table = doc.createElement('table');
-      table.appendChild(tr);
-
-      // add all properties
-      for (var name in lfs) {
-        table.appendChild(createRow(doc, name, lfs[name]));
-      }
-
-      var frg = doc.createDocumentFragment();
-      frg.appendChild(table);
-      panel.body.appendChild(frg);
-    });
-  }
-
-  self.panel('PROJECT_INFO_SCREEN_BOTTOM', onProjectInfo);
-  });