in src/main/java/com/googlesource/gerrit/plugins/xdocs/Module.java [49:91]
protected void configure() {
install(new XDocLoader.Module());
factory(XDocProjectConfig.Factory.class);
DynamicMap.mapOf(binder(), Formatter.class);
bind(Formatter.class)
.annotatedWith(Exports.named(AsciidoctorFormatter.NAME))
.to(AsciidoctorFormatter.class);
bind(Formatter.class).annotatedWith(Exports.named(DocxFormatter.NAME)).to(DocxFormatter.class);
bind(Formatter.class)
.annotatedWith(Exports.named(MarkdownFormatter.NAME))
.to(MarkdownFormatter.class);
bind(Formatter.class)
.annotatedWith(Exports.named(ImageFormatter.NAME))
.to(ImageFormatter.class);
bind(Formatter.class)
.annotatedWith(Exports.named(PlainTextFormatter.NAME))
.to(PlainTextFormatter.class);
bind(Formatter.class).annotatedWith(Exports.named(ZipFormatter.NAME)).to(ZipFormatter.class);
DynamicSet.bind(binder(), ProjectWebLink.class).to(XDocWebLink.class);
DynamicSet.bind(binder(), BranchWebLink.class).to(XDocWebLink.class);
DynamicSet.bind(binder(), FileWebLink.class).to(XDocWebLink.class);
DynamicSet.bind(binder(), DiffWebLink.class).to(SideBySideDiffPreviewWebLink.class);
DynamicSet.bind(binder(), DiffWebLink.class).to(UnifiedDiffPreviewWebLink.class);
DynamicSet.bind(binder(), TopMenu.class)
.toInstance(
new TopMenu() {
@Override
public List<MenuEntry> getEntries() {
StringBuilder url = new StringBuilder();
url.append("/plugins/");
url.append(pluginName);
url.append(XDocServlet.PATH_PREFIX);
url.append("${projectName}");
return Lists.newArrayList(
new MenuEntry(
GerritTopMenu.PROJECTS,
Lists.newArrayList(new MenuItem("Readme", url.toString()))));
}
});
}