Add HttpModule

Change-Id: I0cf702bfa9b427bdb4e3d13d9859effc511ba332
diff --git a/BUILD b/BUILD
index 4a94772..6ff23b8 100644
--- a/BUILD
+++ b/BUILD
@@ -7,6 +7,7 @@
     manifest_entries = [
         "Gerrit-PluginName: zuul-status",
         "Gerrit-Module: com.googlesource.gerrit.plugins.zuulstatus.Module",
+        "Gerrit-HttpModule: com.googlesource.gerrit.plugins.zuulstatus.HttpModule",
         "Implementation-Title: Zuul status plugin",
         "Implementation-Vendor: Wikimedia Foundation",
     ],
diff --git a/src/main/java/com/googlesource/gerrit/plugins/zuulstatus/HttpModule.java b/src/main/java/com/googlesource/gerrit/plugins/zuulstatus/HttpModule.java
new file mode 100644
index 0000000..ed8baeb
--- /dev/null
+++ b/src/main/java/com/googlesource/gerrit/plugins/zuulstatus/HttpModule.java
@@ -0,0 +1,28 @@
+// Copyright (C) 2019 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.
+
+package com.googlesource.gerrit.plugins.zuulstatus;
+
+import com.google.gerrit.extensions.registration.DynamicSet;
+import com.google.gerrit.extensions.webui.JavaScriptPlugin;
+import com.google.gerrit.extensions.webui.WebUiPlugin;
+import com.google.inject.servlet.ServletModule;
+
+public class HttpModule extends ServletModule {
+  @Override
+  protected void configureServlets() {
+    DynamicSet.bind(binder(), WebUiPlugin.class)
+        .toInstance(new JavaScriptPlugin("zuul-status.html"));
+  }
+}
diff --git a/src/main/java/com/googlesource/gerrit/plugins/zuulstatus/Module.java b/src/main/java/com/googlesource/gerrit/plugins/zuulstatus/Module.java
index 59dcff6..f7077c6 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/zuulstatus/Module.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/zuulstatus/Module.java
@@ -19,25 +19,20 @@
 import com.google.gerrit.extensions.annotations.Exports;
 import com.google.gerrit.extensions.registration.DynamicSet;
 import com.google.gerrit.extensions.restapi.RestApiModule;
-import com.google.gerrit.extensions.webui.JavaScriptPlugin;
-import com.google.gerrit.extensions.webui.WebUiPlugin;
 import com.google.gerrit.server.config.ProjectConfigEntry;
 
 public class Module extends RestApiModule {
   @Override
   protected void configure() {
-    DynamicSet.bind(binder(), WebUiPlugin.class)
-        .toInstance(new JavaScriptPlugin("zuul-status.html"));
-
     get(PROJECT_KIND, "config").to(GetConfig.class);
 
     // TODO: these annotations only apply to GWT UIs...
     bind(ProjectConfigEntry.class)
-	.annotatedWith(Exports.named("url"))
-	.toInstance(new ProjectConfigEntry("Top-level Zuul URL", null));
+        .annotatedWith(Exports.named("url"))
+        .toInstance(new ProjectConfigEntry("Top-level Zuul URL", null));
 
     bind(ProjectConfigEntry.class)
-	.annotatedWith(Exports.named("tenant"))
-	.toInstance(new ProjectConfigEntry("Zuul v3 tenant name -- leave empty on Zuul v2", null));
+        .annotatedWith(Exports.named("tenant"))
+        .toInstance(new ProjectConfigEntry("Zuul v3 tenant name -- leave empty on Zuul v2", null));
   }
 }