better mojo documentation formatting and adminition
diff --git a/arthur-maven-plugin/src/main/java/org/apache/geronimo/arthur/maven/mojo/NativeImageMojo.java b/arthur-maven-plugin/src/main/java/org/apache/geronimo/arthur/maven/mojo/NativeImageMojo.java
index 86c7880..e0995db 100644
--- a/arthur-maven-plugin/src/main/java/org/apache/geronimo/arthur/maven/mojo/NativeImageMojo.java
+++ b/arthur-maven-plugin/src/main/java/org/apache/geronimo/arthur/maven/mojo/NativeImageMojo.java
@@ -134,7 +134,7 @@
private int maxRuntimeCompileMethods;
/**
- * Enforce {@link #maxRuntimeCompileMethods}.
+ * Enforce `maxRuntimeCompileMethods`.
*/
@Parameter(property = "arthur.enforceMaxRuntimeCompileMethods", defaultValue = "true")
private boolean enforceMaxRuntimeCompileMethods;
@@ -165,6 +165,7 @@
/**
* Behavior when native compilation fails, it is recommended to keep it to "no".
+ * Supported values are `no`, `force` and `auto`.
*/
@Parameter(property = "arthur.fallbackMode", defaultValue = "no")
private ArthurNativeImageConfiguration.FallbackMode fallbackMode;
@@ -223,25 +224,25 @@
//
/**
- * Inline configuration model (appended to {@link #reflectionConfigurationFiles}.
+ * Inline configuration model (appended to `reflectionConfigurationFiles`).
*/
@Parameter
private List<ClassReflectionModel> reflections;
/**
- * Inline resource bundle model (appended to {@link #reflectionConfigurationFiles}.
+ * Inline resource bundle model (appended to `reflectionConfigurationFiles`).
*/
@Parameter
private List<ResourceBundleModel> bundles;
/**
- * Inline resources model (appended to {@link #resourcesConfigurationFiles}.
+ * Inline resources model (appended to `resourcesConfigurationFiles`).
*/
@Parameter
private List<ResourceModel> resources;
/**
- * Inline dynamic proxy configuration (appended to {@link #dynamicProxyConfigurationFiles}).
+ * Inline dynamic proxy configuration (appended to `dynamicProxyConfigurationFiles`).
*/
@Parameter
private List<DynamicProxyModel> dynamicProxies;
diff --git a/documentation/src/main/java/org/apache/geronimo/arthur/documentation/command/Generate.java b/documentation/src/main/java/org/apache/geronimo/arthur/documentation/command/Generate.java
index 55905bd..07e73cd 100644
--- a/documentation/src/main/java/org/apache/geronimo/arthur/documentation/command/Generate.java
+++ b/documentation/src/main/java/org/apache/geronimo/arthur/documentation/command/Generate.java
@@ -23,7 +23,10 @@
import static java.util.stream.Collectors.joining;
import static org.asciidoctor.SafeMode.UNSAFE;
+import java.io.BufferedReader;
+import java.io.ByteArrayInputStream;
import java.io.IOException;
+import java.io.InputStream;
import java.io.PrintStream;
import java.io.Writer;
import java.nio.charset.StandardCharsets;
@@ -181,8 +184,17 @@
visitor.visit(staticConfiguration, file -> executor.execute(() -> {
final Path target = output.resolve(staticConfiguration.getLocation().relativize(file));
ensureExists(target.getParent());
+ final String filename = file.getFileName().toString();
try {
- Files.copy(file, target, StandardCopyOption.REPLACE_EXISTING);
+ if (filename.endsWith(".js") || filename.endsWith(".css")) { // strip ASF header
+ try (final BufferedReader reader = Files.newBufferedReader(file);
+ final InputStream stream = new ByteArrayInputStream(
+ reader.lines().skip(16/*header*/).collect(joining("\n")).getBytes(StandardCharsets.UTF_8))) {
+ Files.copy(stream, target, StandardCopyOption.REPLACE_EXISTING);
+ }
+ } else {
+ Files.copy(file, target, StandardCopyOption.REPLACE_EXISTING);
+ }
} catch (final IOException e) {
throw new IllegalStateException(e);
}
@@ -224,7 +236,7 @@
ensureExists(workdir);
final Collection<MojoParser.Parameter> parameters = mojoParser.extractParameters(mojo);
try (final Writer writer = Files.newBufferedWriter(workdir.resolve("generated_" + marker + "_mojo.adoc"))) {
- writer.write("[opts=\"header\",role=\"table table-bordered\"]\n" +
+ writer.write("[opts=\"header\",role=\"table table-bordered\",cols=\"2,1,3\"]\n" +
"|===\n" +
"|Name|Type|Description\n\n" +
parameters.stream()
diff --git a/documentation/src/main/java/org/apache/geronimo/arthur/documentation/mojo/MojoParser.java b/documentation/src/main/java/org/apache/geronimo/arthur/documentation/mojo/MojoParser.java
index 2017fd2..a372048 100644
--- a/documentation/src/main/java/org/apache/geronimo/arthur/documentation/mojo/MojoParser.java
+++ b/documentation/src/main/java/org/apache/geronimo/arthur/documentation/mojo/MojoParser.java
@@ -66,6 +66,7 @@
if (generics > 0) {
type = type.substring(0, generics);
}
+ type = type.substring(type.indexOf('.') + 1); // nested classes dont need enclosing
parameters.add(new Parameter(
line.substring(nameStart, line.length() - ";".length()),
type,
diff --git a/documentation/src/static/css/arthur.css b/documentation/src/static/css/arthur.css
index c1a8ce8..69adc94 100644
--- a/documentation/src/static/css/arthur.css
+++ b/documentation/src/static/css/arthur.css
@@ -14,24 +14,18 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
+* {text-align: justify;}
+.page-header {padding-top: 100px;min-height: calc(100vh - 50px);}
+#footer {font-style: italic;font-size: smaller;}
+table > thead > tr > th {background-color: lightslategray;}
+.landing-images {padding-bottom: 1.5rem;}
+.center-p > p {text-align: center;}
+.admonitionblock {padding-top: 0.5rem;padding-bottom: 0.5rem;}
-* {
- text-align: justify;
-}
-.page-header {
- padding-top: 100px;
- min-height: calc(100vh - 50px);
-}
-#footer {
- font-style: italic;
- font-size: smaller;
-}
-table > thead > tr > th {
- background-color: lightslategray;
-}
-.landing-images {
- padding-bottom: 1.5rem;
-}
-.center-p > p {
- text-align: center;
-}
+// asciidoctor icons
+.admonitionblock td.icon [class^="fa icon-"]{font-size:2.5em;text-shadow:1px 1px 2px rgba(0,0,0,.5);cursor:default}
+.admonitionblock td.icon .icon-note::before{content:"\f05a";color:#19407c}
+.admonitionblock td.icon .icon-tip::before{content:"\f0eb";text-shadow:1px 1px 2px rgba(155,155,0,.8);color:#111}
+.admonitionblock td.icon .icon-warning::before{content:"\f071";color:#bf6900}
+.admonitionblock td.icon .icon-caution::before{content:"\f06d";color:#bf3400}
+.admonitionblock td.icon .icon-important::before{content:"\f06a";color:#bf0000}