Hide use of private WorkQueue.Executor for Gerrit master
The Gerrit's internal WorkQueue.Executor class has become
private in master and cannot be referenced anymore from a plugin.
However, it was incorrect to refer to the internal implementation
of the executor and it is much better to simply use the implemented
interface.
Change-Id: I2c1d895d503730bea4b4b635db7e04f4126453f8
diff --git a/src/main/java/com/googlesource/gerrit/plugins/webhooks/ExecutorProvider.java b/src/main/java/com/googlesource/gerrit/plugins/webhooks/ExecutorProvider.java
index f425c36..0289422 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/webhooks/ExecutorProvider.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/webhooks/ExecutorProvider.java
@@ -14,17 +14,17 @@
package com.googlesource.gerrit.plugins.webhooks;
-import java.util.concurrent.ScheduledThreadPoolExecutor;
-
import com.google.gerrit.extensions.annotations.PluginName;
import com.google.gerrit.extensions.events.LifecycleListener;
import com.google.gerrit.server.git.WorkQueue;
import com.google.inject.Inject;
import com.google.inject.Provider;
+import java.util.concurrent.ScheduledExecutorService;
+
class ExecutorProvider
- implements Provider<ScheduledThreadPoolExecutor>, LifecycleListener {
- private WorkQueue.Executor executor;
+ implements Provider<ScheduledExecutorService>, LifecycleListener {
+ private ScheduledExecutorService executor;
@Inject
ExecutorProvider(WorkQueue workQueue,
@@ -45,7 +45,7 @@
}
@Override
- public ScheduledThreadPoolExecutor get() {
+ public ScheduledExecutorService get() {
return executor;
}
}
diff --git a/src/main/java/com/googlesource/gerrit/plugins/webhooks/Module.java b/src/main/java/com/googlesource/gerrit/plugins/webhooks/Module.java
index accb0a2..88e9637 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/webhooks/Module.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/webhooks/Module.java
@@ -14,7 +14,6 @@
package com.googlesource.gerrit.plugins.webhooks;
-import java.util.concurrent.ScheduledThreadPoolExecutor;
import org.apache.http.impl.client.CloseableHttpClient;
@@ -22,12 +21,13 @@
import com.google.gerrit.extensions.config.FactoryModule;
import com.google.gerrit.extensions.registration.DynamicSet;
import com.google.inject.Scopes;
+import java.util.concurrent.ScheduledExecutorService;
public class Module extends FactoryModule {
@Override
protected void configure() {
- bind(ScheduledThreadPoolExecutor.class)
+ bind(ScheduledExecutorService.class)
.annotatedWith(WebHooksExecutor.class)
.toProvider(ExecutorProvider.class);
bind(Configuration.class).in(Scopes.SINGLETON);
diff --git a/src/main/java/com/googlesource/gerrit/plugins/webhooks/PostTask.java b/src/main/java/com/googlesource/gerrit/plugins/webhooks/PostTask.java
index 9311531..efb24f1 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/webhooks/PostTask.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/webhooks/PostTask.java
@@ -15,7 +15,7 @@
package com.googlesource.gerrit.plugins.webhooks;
import java.io.IOException;
-import java.util.concurrent.ScheduledThreadPoolExecutor;
+import java.util.concurrent.ScheduledExecutorService;
import java.util.concurrent.TimeUnit;
import javax.net.ssl.SSLException;
@@ -35,7 +35,7 @@
PostTask create(@Assisted("url") String url, @Assisted("body") String body);
}
- private final ScheduledThreadPoolExecutor executor;
+ private final ScheduledExecutorService executor;
private final HttpSession session;
private final Configuration cfg;
private final String url;
@@ -43,7 +43,7 @@
private int execCnt;
@AssistedInject
- public PostTask(@WebHooksExecutor ScheduledThreadPoolExecutor executor,
+ public PostTask(@WebHooksExecutor ScheduledExecutorService executor,
HttpSession session,
Configuration cfg,
@Assisted("url") String url,