Add Analytics Wizard in top menu
Make the plugin easier to access from the Top Menu.
Feature: Issue 9962
Change-Id: I65c0f0f539458e9d6c7428090d3a5032414245d9
diff --git a/README.md b/README.md
index 017aad4..1eb971c 100644
--- a/README.md
+++ b/README.md
@@ -30,7 +30,7 @@
```
# How to use it
-Once the plugin is installed and you are logged in Gerrit browse to this url: [https://<you_gerrit_url>/plugins/analytics-wizard/static/analytics-dashboard.html]()
+Once you are logged in Gerrit you can access the dashboard configuration via the top menu (`Analytics Wizard > Configure Dashboard`).
You will land on this screen:
diff --git a/src/main/scala/com/googlesource/gerrit/plugins/analytics/wizard/AnalyticsWizardTopMenu.scala b/src/main/scala/com/googlesource/gerrit/plugins/analytics/wizard/AnalyticsWizardTopMenu.scala
new file mode 100644
index 0000000..3f60aae
--- /dev/null
+++ b/src/main/scala/com/googlesource/gerrit/plugins/analytics/wizard/AnalyticsWizardTopMenu.scala
@@ -0,0 +1,17 @@
+package com.googlesource.gerrit.plugins.analytics.wizard
+
+import java.util
+import com.google.gerrit.extensions.client.MenuItem
+import com.google.gerrit.extensions.webui.TopMenu
+import scala.collection.JavaConverters._
+
+class AnalyticsWizardTopMenu extends TopMenu {
+ override def getEntries: util.List[TopMenu.MenuEntry] =
+ List(
+ new TopMenu.MenuEntry(
+ "Analytics Wizard",
+ List(
+ new MenuItem("Configure Dashboard",
+ "/plugins/analytics-wizard/static/analytics-dashboard.html",
+ "_self")).asJava)).asJava
+}
diff --git a/src/main/scala/com/googlesource/gerrit/plugins/analytics/wizard/Module.scala b/src/main/scala/com/googlesource/gerrit/plugins/analytics/wizard/Module.scala
index 5cea45b..62477c9 100644
--- a/src/main/scala/com/googlesource/gerrit/plugins/analytics/wizard/Module.scala
+++ b/src/main/scala/com/googlesource/gerrit/plugins/analytics/wizard/Module.scala
@@ -13,7 +13,9 @@
// limitations under the License.
package com.googlesource.gerrit.plugins.analytics.wizard
+import com.google.gerrit.extensions.registration.DynamicSet
import com.google.gerrit.extensions.restapi.RestApiModule
+import com.google.gerrit.extensions.webui.TopMenu
import com.google.gerrit.server.project.ProjectResource.PROJECT_KIND
import com.google.inject.AbstractModule
@@ -23,6 +25,8 @@
install(new RestApiModule() {
override protected def configure() = {
+ DynamicSet.bind(binder, classOf[TopMenu]).to(classOf[AnalyticsWizardTopMenu])
+
put(PROJECT_KIND, "stack").to(classOf[PutAnalyticsStack])
post(PROJECT_KIND, "server").to(classOf[PostAnalyticsStack])