Merge branch 'stable-3.0'
* stable-3.0:
Allow to configure the number of hook execution workers
Submit: Handle potentially missing username
Change-Id: Ib92b3db88ad33e56b3f7bfcf1ba8069a318125e4
diff --git a/src/main/java/com/googlesource/gerrit/plugins/hooks/HookArgs.java b/src/main/java/com/googlesource/gerrit/plugins/hooks/HookArgs.java
index 87d4291..190826e 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/hooks/HookArgs.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/hooks/HookArgs.java
@@ -105,7 +105,7 @@
uf.flatMap(
f ->
f.getChangeViewUrl(
- new Project.NameKey(change.project), new Change.Id(change._number)))
+ Project.nameKey(change.project), Change.id(change._number)))
.orElse(""));
} else {
args.add("");
@@ -131,7 +131,7 @@
private String format(AccountInfo account) {
return String.format(
- "\"%s\"", identifiedUserFactory.create(new Account.Id(account._accountId)).getNameEmail());
+ "\"%s\"", identifiedUserFactory.create(Account.id(account._accountId)).getNameEmail());
}
@Override
diff --git a/src/main/java/com/googlesource/gerrit/plugins/hooks/HookMetrics.java b/src/main/java/com/googlesource/gerrit/plugins/hooks/HookMetrics.java
index 9b0bc82..e5dd877 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/hooks/HookMetrics.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/hooks/HookMetrics.java
@@ -31,7 +31,7 @@
@Inject
HookMetrics(MetricMaker metricMaker) {
- Field<String> field = Field.ofString("hook");
+ Field<String> field = Field.ofString("hook").build();
latency =
metricMaker.newTimer(
"latency",
@@ -47,7 +47,7 @@
"timeout", new Description("Hook execution timeouts").setRate(), field);
}
- public Timer1.Context start(String name) {
+ public Timer1.Context<String> start(String name) {
return latency.start(name);
}
diff --git a/src/main/java/com/googlesource/gerrit/plugins/hooks/HookQueue.java b/src/main/java/com/googlesource/gerrit/plugins/hooks/HookQueue.java
index 50ba975..c8f154a 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/hooks/HookQueue.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/hooks/HookQueue.java
@@ -21,6 +21,7 @@
import com.google.inject.Inject;
import java.nio.file.Files;
import java.nio.file.Path;
+import java.util.concurrent.Future;
import java.util.concurrent.ScheduledExecutorService;
import org.eclipse.jgit.lib.Config;
@@ -47,7 +48,8 @@
logger.atFine().log("Hook file not found: %s", hook.toAbsolutePath());
return;
}
- queue.submit(new HookTask.Async(projectName, hook, args));
+ @SuppressWarnings("unused")
+ Future<?> ignored = queue.submit(new HookTask.Async(projectName, hook, args));
}
@Override
diff --git a/src/main/java/com/googlesource/gerrit/plugins/hooks/HookTask.java b/src/main/java/com/googlesource/gerrit/plugins/hooks/HookTask.java
index 8b06a24..ee59fb4 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/hooks/HookTask.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/hooks/HookTask.java
@@ -85,7 +85,7 @@
public HookResult runHook() {
HookResult result = null;
String name = getName();
- try (Timer1.Context timer = args.metrics.start(name)) {
+ try (Timer1.Context<String> timer = args.metrics.start(name)) {
args.metrics.count(name);
List<String> argv = new ArrayList<>(1 + args.get().size());
argv.add(hook.toAbsolutePath().toString());
@@ -98,7 +98,7 @@
env.put("GERRIT_SITE", sitePath.toAbsolutePath().toString());
if (projectName != null) {
- try (Repository git = args.gitManager.openRepository(new Project.NameKey(projectName))) {
+ try (Repository git = args.gitManager.openRepository(Project.nameKey(projectName))) {
pb.directory(git.getDirectory());
env.put("GIT_DIR", git.getDirectory().getAbsolutePath());
}
diff --git a/src/main/java/com/googlesource/gerrit/plugins/hooks/Submit.java b/src/main/java/com/googlesource/gerrit/plugins/hooks/Submit.java
index e383200..f23cfa7 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/hooks/Submit.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/hooks/Submit.java
@@ -14,7 +14,7 @@
package com.googlesource.gerrit.plugins.hooks;
-import com.google.gerrit.reviewdb.client.Branch;
+import com.google.gerrit.reviewdb.client.BranchNameKey;
import com.google.gerrit.reviewdb.client.PatchSet;
import com.google.gerrit.server.IdentifiedUser;
import com.google.gerrit.server.git.CodeReviewCommit;
@@ -41,7 +41,7 @@
Repository repo,
CodeReviewCommit commit,
ProjectState destProject,
- Branch.NameKey destBranch,
+ BranchNameKey destBranch,
PatchSet.Id patchSetId,
IdentifiedUser caller)
throws MergeValidationException {
@@ -49,7 +49,7 @@
HookArgs args = hookFactory.createArgs();
args.add("--project", projectName);
- args.add("--branch", destBranch.get());
+ args.add("--branch", destBranch.branch());
args.add("--submitter", caller.getNameEmail());
args.add("--submitter-username", caller.getUserName().orElse(null));
args.add("--patchset", patchSetId.get());