Support mime types with wildcard as subtype in formatter config
This allows to register a formatter for all files that match a certain
media type, e.g.:
[formatter "PLAIN_TEXT"]
mimeType = text/*
Change-Id: I5dacf1270501e0608fe115cb924448ef3df76782
Signed-off-by: Edwin Kempin <edwin.kempin@sap.com>
diff --git a/src/main/java/com/googlesource/gerrit/plugins/xdocs/formatter/Formatters.java b/src/main/java/com/googlesource/gerrit/plugins/xdocs/formatter/Formatters.java
index a1e3e84..0d6a77e 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/xdocs/formatter/Formatters.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/xdocs/formatter/Formatters.java
@@ -102,9 +102,11 @@
continue;
}
}
- for (String configuredMimeType :
- formatterCfg.getStringList(KEY_MIME_TYPE)) {
- if (mimeType.equals(new MimeType(configuredMimeType))) {
+ for (String mt : formatterCfg.getStringList(KEY_MIME_TYPE)) {
+ MimeType configuredMimeType = new MimeType(mt);
+ if (mimeType.equals(configuredMimeType)
+ || ("*".equals(configuredMimeType.getSubType())
+ && mimeType.getMediaType().equals(configuredMimeType.getMediaType()))) {
int prio = formatterCfg.getInt(KEY_PRIO, 0);
if (formatter == null || prio > formatterPrio) {
formatter = new FormatterProvider(e.getKey(), e.getValue());