Merge "Set GERRIT_VERSION to master"
diff --git a/src/main/java/com/ericsson/gerrit/plugins/highavailability/HttpModule.java b/src/main/java/com/ericsson/gerrit/plugins/highavailability/HttpModule.java
index a328694..921d750 100644
--- a/src/main/java/com/ericsson/gerrit/plugins/highavailability/HttpModule.java
+++ b/src/main/java/com/ericsson/gerrit/plugins/highavailability/HttpModule.java
@@ -33,7 +33,7 @@
@Override
protected void configureServlets() {
- install(new RestForwarderServletModule());
+ install(new RestForwarderServletModule(config));
if (config.healthCheck().enabled()) {
install(new HealthServletModule());
}
diff --git a/src/main/java/com/ericsson/gerrit/plugins/highavailability/forwarder/rest/RestForwarderServletModule.java b/src/main/java/com/ericsson/gerrit/plugins/highavailability/forwarder/rest/RestForwarderServletModule.java
index ffe3afc..c58d8b2 100644
--- a/src/main/java/com/ericsson/gerrit/plugins/highavailability/forwarder/rest/RestForwarderServletModule.java
+++ b/src/main/java/com/ericsson/gerrit/plugins/highavailability/forwarder/rest/RestForwarderServletModule.java
@@ -14,20 +14,34 @@
package com.ericsson.gerrit.plugins.highavailability.forwarder.rest;
+import com.ericsson.gerrit.plugins.highavailability.Configuration;
import com.google.inject.servlet.ServletModule;
public class RestForwarderServletModule extends ServletModule {
+ private final Configuration config;
+
+ public RestForwarderServletModule(Configuration config) {
+ this.config = config;
+ }
+
@Override
protected void configureServlets() {
- serveRegex("/index/account/\\d+$").with(IndexAccountRestApiServlet.class);
- serveRegex("/index/change/batch/.*$").with(IndexBatchChangeRestApiServlet.class);
- serveRegex("/index/change/.*$").with(IndexChangeRestApiServlet.class);
- serveRegex("/index/group/\\w+$").with(IndexGroupRestApiServlet.class);
- serveRegex("/index/project/.*$").with(IndexProjectRestApiServlet.class);
- serve("/event/*").with(EventRestApiServlet.class);
- serve("/cache/project_list/*").with(ProjectListApiServlet.class);
- serve("/cache/*").with(CacheRestApiServlet.class);
-
- serve("/query/changes.updated.since/*").with(QueryChangesUpdatedSinceServlet.class);
+ if (config.index().synchronize()) {
+ serveRegex("/index/account/\\d+$").with(IndexAccountRestApiServlet.class);
+ serveRegex("/index/change/batch/.*$").with(IndexBatchChangeRestApiServlet.class);
+ serveRegex("/index/change/.*$").with(IndexChangeRestApiServlet.class);
+ serveRegex("/index/group/\\w+$").with(IndexGroupRestApiServlet.class);
+ serveRegex("/index/project/.*$").with(IndexProjectRestApiServlet.class);
+ if (config.indexSync().enabled()) {
+ serve("/query/changes.updated.since/*").with(QueryChangesUpdatedSinceServlet.class);
+ }
+ }
+ if (config.event().synchronize()) {
+ serve("/event/*").with(EventRestApiServlet.class);
+ }
+ if (config.cache().synchronize()) {
+ serve("/cache/project_list/*").with(ProjectListApiServlet.class);
+ serve("/cache/*").with(CacheRestApiServlet.class);
+ }
}
}