Configure plugin specific list parameters as ProjectConfigEntries
Change-Id: Idc1b5a1c59e34de12982fbd29bb13b1dbf0d8437
diff --git a/src/main/java/com/googlesource/gerrit/plugins/cookbook/Module.java b/src/main/java/com/googlesource/gerrit/plugins/cookbook/Module.java
index 92e80c2..d73fc6c 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/cookbook/Module.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/cookbook/Module.java
@@ -17,9 +17,13 @@
import static com.google.gerrit.server.change.RevisionResource.REVISION_KIND;
import static com.google.gerrit.server.project.ProjectResource.PROJECT_KIND;
+import com.google.common.collect.ImmutableList;
+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.TopMenu;
+import com.google.gerrit.reviewdb.client.Project.InheritableBoolean;
+import com.google.gerrit.server.config.ProjectConfigEntry;
import com.google.inject.AbstractModule;
public class Module extends AbstractModule {
@@ -36,5 +40,31 @@
get(REVISION_KIND, "greetings").to(Greetings.class);
}
});
+ configurePluginParameters();
+ }
+
+ private void configurePluginParameters() {
+ bind(ProjectConfigEntry.class)
+ .annotatedWith(Exports.named("enabled-hello"))
+ .toInstance(new ProjectConfigEntry("Enable Greeting", true));
+ bind(ProjectConfigEntry.class)
+ .annotatedWith(Exports.named("enabled-goodby"))
+ .toInstance(new ProjectConfigEntry("Enable Say Good By",
+ InheritableBoolean.TRUE,
+ InheritableBoolean.class, true));
+ bind(ProjectConfigEntry.class)
+ .annotatedWith(Exports.named("default-greet"))
+ .toInstance(new ProjectConfigEntry("Default Greet",
+ "Hey dude, how are you?", true));
+ bind(ProjectConfigEntry.class)
+ .annotatedWith(Exports.named("language"))
+ .toInstance(new ProjectConfigEntry("Preferred Language", "en",
+ ImmutableList.of("en", "de", "fr"), true));
+ bind(ProjectConfigEntry.class)
+ .annotatedWith(Exports.named("greet-number-per-week"))
+ .toInstance(new ProjectConfigEntry("Greets Per Week", 42, true));
+ bind(ProjectConfigEntry.class)
+ .annotatedWith(Exports.named("greet-number-per-year"))
+ .toInstance(new ProjectConfigEntry("Greets Per Year", 4711L, true));
}
}