Merge branch 'stable-3.1'
* stable-3.1:
PathToLockId: Refactor to use a FunctionalInterface
LfsAuthUserProvider: Refactor to avoid name hiding
LfsLocksHandle: Collapse duplicate if-block
LfsLocksHandler: Simplify lambda expression
LfsLocksHandler: Call Optional#isPresent before #get
Use Truth8 to assert about Optional#isPresent
LfsCipherTest: Extract repeated string to a constant
InitLfs: Remove unnecessary empty overridden method
LfsSshAuth: Remove redundant 'throws' declaration
LfsGson: Remove unnecessary 'throws' declarations
LfsDateTime: Add private constructor to hide default constructor
Remove LfsDateTimeTest and dependency on joda-time
Bazel: Mark joda-time as test only
Change-Id: I37393a8e50b2f8c014f366dcfc660e4759d4760d
diff --git a/WORKSPACE b/WORKSPACE
index 0a0d42d..2b1a5b4 100644
--- a/WORKSPACE
+++ b/WORKSPACE
@@ -3,7 +3,7 @@
load("//:bazlets.bzl", "load_bazlets")
load_bazlets(
- commit = "56aafc4c0bb1b72fba34f5bdfb29ddb1e1a17801",
+ commit = "4a27255dff75eadc98b86391806be13e030e6ff3",
#local_path = "/home/<user>/projects/bazlets",
)
diff --git a/external_plugin_deps.bzl b/external_plugin_deps.bzl
index 881a048..798575c 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")
+load("//tools/bzl:maven_jar.bzl", "GERRIT", "ECLIPSE", "MAVEN_LOCAL", "maven_jar")
-JGIT_VERSION = "5.5.1.201910021850-r"
-REPO = MAVEN_CENTRAL
+JGIT_VERSION = "5.8.0.202005061305-m2"
+REPO = ECLIPSE
def external_plugin_deps():
maven_jar(
name = "jgit-http-apache",
artifact = "org.eclipse.jgit:org.eclipse.jgit.http.apache:" + JGIT_VERSION,
- sha1 = "aaf5367ff2cba4174b4165ed0a64dc92cac75871",
+ sha1 = "e8d4803362d7a523f7e716b30ff2b77868ce91f6",
repository = REPO,
exclude = [
"about.html",
@@ -18,7 +18,7 @@
maven_jar(
name = "jgit-lfs",
artifact = "org.eclipse.jgit:org.eclipse.jgit.lfs:" + JGIT_VERSION,
- sha1 = "c37af6b2d28df21942e935753922333c8612cef2",
+ sha1 = "5d57e3c8e047335abe2406e392c9711646905b06",
repository = REPO,
exclude = [
"about.html",
@@ -29,7 +29,7 @@
maven_jar(
name = "jgit-lfs-server",
artifact = "org.eclipse.jgit:org.eclipse.jgit.lfs.server:" + JGIT_VERSION,
- sha1 = "7df786dfb9843a01e46cbf48ef921c5aac087ca1",
+ sha1 = "45d5b77931ab0fc39de9d08c1c3d3e7e9f1c5d2c",
repository = REPO,
exclude = [
"about.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 772a536..59d4e97 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/lfs/LfsApiServlet.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/lfs/LfsApiServlet.java
@@ -31,6 +31,7 @@
import com.google.inject.Inject;
import com.google.inject.Singleton;
import com.googlesource.gerrit.plugins.lfs.auth.LfsAuthUserProvider;
+import java.util.Optional;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import org.eclipse.jgit.lfs.errors.LfsException;
@@ -82,13 +83,14 @@
}
String projName = matcher.group(1);
Project.NameKey project = Project.nameKey(ProjectUtil.stripGitSuffix(projName));
- ProjectState state = projectCache.get(project);
- if (state == null || state.getProject().getState() == HIDDEN) {
+ Optional<ProjectState> state = projectCache.get(project);
+ if (!state.isPresent() || state.get().getProject().getState() == HIDDEN) {
throw new LfsRepositoryNotFound(project.get());
}
- authorizeUser(userProvider.getUser(auth, projName, request.getOperation()), state, request);
+ authorizeUser(
+ userProvider.getUser(auth, projName, request.getOperation()), state.get(), request);
- if (request.isUpload() && state.getProject().getState() == READ_ONLY) {
+ if (request.isUpload() && state.get().getProject().getState() == READ_ONLY) {
throw new LfsRepositoryReadOnly(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 b8a6f14..e8d46c2 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
@@ -35,6 +35,7 @@
import com.googlesource.gerrit.plugins.lfs.auth.LfsAuthUserProvider;
import com.googlesource.gerrit.plugins.lfs.locks.LfsLocksHandler.LfsLockExistsException;
import java.io.IOException;
+import java.util.Optional;
import org.eclipse.jgit.lfs.errors.LfsException;
import org.eclipse.jgit.lfs.errors.LfsRepositoryNotFound;
import org.eclipse.jgit.lfs.errors.LfsUnauthorized;
@@ -72,12 +73,12 @@
String name = getProjectName();
ProjectState project = getProject(name);
CurrentUser user = getUser(name);
- ProjectState state = projectCache.get(project.getNameKey());
- if (state == null) {
+ Optional<ProjectState> state = projectCache.get(project.getNameKey());
+ if (!state.isPresent()) {
throw new LfsRepositoryNotFound(project.getNameKey().get());
}
try {
- authorizeUser(permissionBackend.user(user).project(state.getNameKey()));
+ authorizeUser(permissionBackend.user(user).project(state.get().getNameKey()));
} catch (AuthException | PermissionBackendException e) {
throwUnauthorizedOp(getAction(), project, user);
}
@@ -105,11 +106,11 @@
protected ProjectState getProject(String name) throws LfsRepositoryNotFound {
Project.NameKey project = Project.nameKey(ProjectUtil.stripGitSuffix(name));
- ProjectState state = projectCache.get(project);
- if (state == null || state.getProject().getState() == HIDDEN) {
+ Optional<ProjectState> state = projectCache.get(project);
+ if (!state.isPresent() || state.get().getProject().getState() == HIDDEN) {
throw new LfsRepositoryNotFound(project.get());
}
- return state;
+ return state.get();
}
protected CurrentUser getUser(String project) {
diff --git a/tools/bzl/maven_jar.bzl b/tools/bzl/maven_jar.bzl
index fb20419..05c8977 100644
--- a/tools/bzl/maven_jar.bzl
+++ b/tools/bzl/maven_jar.bzl
@@ -1,11 +1,13 @@
load(
"@com_googlesource_gerrit_bazlets//tools:maven_jar.bzl",
+ _eclipse = "ECLIPSE",
_gerrit = "GERRIT",
_maven_central = "MAVEN_CENTRAL",
_maven_jar = "maven_jar",
_maven_local = "MAVEN_LOCAL",
)
+ECLIPSE = _eclipse
GERRIT = _gerrit
MAVEN_CENTRAL = _maven_central
MAVEN_LOCAL = _maven_local