cleanup
diff --git a/pom.xml b/pom.xml
index 66f40a1..e281ac2 100644
--- a/pom.xml
+++ b/pom.xml
@@ -198,7 +198,7 @@
<javaVersion>8</javaVersion>
<!-- for dependencies -->
<jettyVersion>9.4.53.v20231009</jettyVersion>
- <doxiaVersion>2.0.0-M8</doxiaVersion>
+ <doxiaVersion>2.0.0-M9-SNAPSHOT</doxiaVersion>
<doxiaSitetoolsVersion>2.0.0-M17-SNAPSHOT</doxiaSitetoolsVersion>
<wagonVersion>3.5.3</wagonVersion>
<slf4jVersion>1.7.36</slf4jVersion>
diff --git a/src/main/java/org/apache/maven/plugins/site/render/AbstractSiteRenderingMojo.java b/src/main/java/org/apache/maven/plugins/site/render/AbstractSiteRenderingMojo.java
index 151ee18..66e8922 100644
--- a/src/main/java/org/apache/maven/plugins/site/render/AbstractSiteRenderingMojo.java
+++ b/src/main/java/org/apache/maven/plugins/site/render/AbstractSiteRenderingMojo.java
@@ -95,17 +95,18 @@
private Map<String, Object> attributes;
/**
- * Parser configurations (per Doxia markup source file paths).
- * Each entry has the following format
+ * Parser configurations (per matching Doxia markup source file path patterns).
+ * Each configuration item has the following format:
* <p/>
* <pre>
* <patterns>
- * <pattern>glob:**/*.md</pattern><!-- is either glob or regex syntax -->
+ * <pattern>glob:**/*.md</pattern><!-- is either glob or regex syntax with the according prefix -->
* </patterns>
* <emitComments>true</emitComments><!-- false by default -->
* <emitAnchorsForIndexableEntries>false</emitAnchorsForIndexableEntries><!-- true by default -->
* </pre>
- *
+ * The configuration is only applied if one of the given patterns matches the Doxia markup source file path.
+ * The first matching configuration wins (i.e. is applied).
* @since 4.0.0
* @see java.nio.file.FileSystem#getPathMatcher(String) FileSystem.getPathMatcher(String) for the supported patterns
*/
diff --git a/src/main/java/org/apache/maven/plugins/site/render/ParserConfiguration.java b/src/main/java/org/apache/maven/plugins/site/render/ParserConfiguration.java
index 4f8a84d..c48abda 100644
--- a/src/main/java/org/apache/maven/plugins/site/render/ParserConfiguration.java
+++ b/src/main/java/org/apache/maven/plugins/site/render/ParserConfiguration.java
@@ -28,7 +28,9 @@
import org.apache.maven.doxia.parser.Parser;
-/** Configuration for a Doxia {@link Parser} (bound to a specific markup source path pattern) **/
+/** Configuration for a Doxia {@link Parser} (bound to a specific markup source path pattern)
+ * @since 4.0.0
+ **/
public class ParserConfiguration implements org.apache.maven.doxia.siterenderer.ParserConfiguration {
/**
@@ -56,7 +58,7 @@
/**
* Switches the feature {@link Parser#setEmitComments(boolean)} either on or off.
- * Default is off.
+ * Default (for Doxia Sitetools) is off.
*
* @param emitComments {@code true} to switch it on, otherwise leave it off
* @see Parser#setEmitComments(boolean)
@@ -67,7 +69,7 @@
/**
* Switches the feature {@link Parser#setEmitAnchorsForIndexableEntries(boolean)} either on or off.
- * Default is on.
+ * Default (for Doxia Sitetools) is on.
*
* @param emitAnchorsForIndexableEntries {@code true} to switch it on, otherwise leave it off
* @see Parser#setEmitAnchorsForIndexableEntries(boolean)
@@ -110,8 +112,8 @@
}
@Override
- public void accept(Parser parser) {
+ public void configure(Parser parser) {
parser.setEmitComments(emitComments);
- // parser.setEmitAnchorsForIndexableEntries(emitAnchorsForIndexableEntries);
+ parser.setEmitAnchorsForIndexableEntries(emitAnchorsForIndexableEntries);
}
}
diff --git a/src/main/java/org/apache/maven/plugins/site/render/ParserConfigurationRetrieverImpl.java b/src/main/java/org/apache/maven/plugins/site/render/ParserConfigurationRetrieverImpl.java
index a6ce768..9376595 100644
--- a/src/main/java/org/apache/maven/plugins/site/render/ParserConfigurationRetrieverImpl.java
+++ b/src/main/java/org/apache/maven/plugins/site/render/ParserConfigurationRetrieverImpl.java
@@ -33,7 +33,10 @@
}
@Override
- public Optional<ParserConfiguration> apply(Path filePath) {
- return parserConfigurations.stream().filter(c -> c.matches(filePath)).findFirst();
+ public Optional<org.apache.maven.doxia.siterenderer.ParserConfiguration> retrieve(Path filePath) {
+ return parserConfigurations.stream()
+ .filter(c -> c.matches(filePath))
+ .findFirst()
+ .map(c -> c);
}
}
diff --git a/src/main/java/org/apache/maven/plugins/site/render/ReportDocumentRenderer.java b/src/main/java/org/apache/maven/plugins/site/render/ReportDocumentRenderer.java
index e30862e..c359269 100644
--- a/src/main/java/org/apache/maven/plugins/site/render/ReportDocumentRenderer.java
+++ b/src/main/java/org/apache/maven/plugins/site/render/ReportDocumentRenderer.java
@@ -131,7 +131,6 @@
docRenderingContext.getBasedirRelativePath(),
document,
docRenderingContext.getParserId(),
- docRenderingContext.getParserConfiguration(), // TODO: use another config?
docRenderingContext.getExtension(),
docRenderingContext.isEditable(),
docRenderingContext.getGenerator());
diff --git a/src/test/java/org/apache/maven/plugins/site/render/ParserConfigurationRetrieverImplTest.java b/src/test/java/org/apache/maven/plugins/site/render/ParserConfigurationRetrieverImplTest.java
index 2cc80db..df80ea1 100644
--- a/src/test/java/org/apache/maven/plugins/site/render/ParserConfigurationRetrieverImplTest.java
+++ b/src/test/java/org/apache/maven/plugins/site/render/ParserConfigurationRetrieverImplTest.java
@@ -35,7 +35,8 @@
ParserConfiguration config2 = new ParserConfiguration();
assertEquals(
Optional.empty(),
- new ParserConfigurationRetrieverImpl(Arrays.asList(config1, config2)).apply(Paths.get("some", "file")));
+ new ParserConfigurationRetrieverImpl(Arrays.asList(config1, config2))
+ .retrieve(Paths.get("some", "file")));
}
@Test
@@ -45,7 +46,7 @@
ParserConfigurationRetrieverImpl parserConfigurationRetrieverImpl =
new ParserConfigurationRetrieverImpl(Arrays.asList(config1));
assertThrows(RuntimeException.class, () -> {
- parserConfigurationRetrieverImpl.apply(Paths.get("some", "file"));
+ parserConfigurationRetrieverImpl.retrieve(Paths.get("some", "file"));
});
}
@@ -57,7 +58,8 @@
config2.addPattern("regex:.*\\.apt");
assertEquals(
Optional.empty(),
- new ParserConfigurationRetrieverImpl(Arrays.asList(config1, config2)).apply(Paths.get("some", "file")));
+ new ParserConfigurationRetrieverImpl(Arrays.asList(config1, config2))
+ .retrieve(Paths.get("some", "file")));
}
@Test
@@ -68,7 +70,8 @@
config2.addPattern("glob:**/*");
assertEquals(
Optional.of(config2),
- new ParserConfigurationRetrieverImpl(Arrays.asList(config1, config2)).apply(Paths.get("some", "file")));
+ new ParserConfigurationRetrieverImpl(Arrays.asList(config1, config2))
+ .retrieve(Paths.get("some", "file")));
}
@Test
@@ -79,6 +82,7 @@
config2.addPattern("regex:.*");
assertEquals(
Optional.of(config1),
- new ParserConfigurationRetrieverImpl(Arrays.asList(config1, config2)).apply(Paths.get("some", "file")));
+ new ParserConfigurationRetrieverImpl(Arrays.asList(config1, config2))
+ .retrieve(Paths.get("some", "file")));
}
}