Skip to content

Commit 7bcfbdb

Browse files
committed
fj-doc-playground-quarkus, switched to freemarker doc process config xml
1 parent 682cb6d commit 7bcfbdb

File tree

6 files changed

+63
-99
lines changed

6 files changed

+63
-99
lines changed

CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
1414

1515
### Changed
1616

17+
- fj-doc-playground-quarkus, switched to freemarker doc process config xml
1718
- fj-doc-sample, fj-doc-mod-openpdf version set to 1.3.0
1819
- fj-doc-sample, setup fop-config fod pdf/a doc handler as inline
1920

fj-doc-mod-opencsv/src/test/java/test/org/fugerit/java/doc/mod/opencsv/coverage/TestOpencsvCoverage.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
import org.fugerit.java.doc.base.config.DocInput;
1313
import org.fugerit.java.doc.base.config.DocOutput;
1414
import org.fugerit.java.doc.base.config.DocTypeHandler;
15-
import org.fugerit.java.doc.mod.opencsv.OpenCSVTypeHandler;
15+
import org.fugerit.java.doc.mod.opencsv.OpenCSVTypeHandlerUTF8;
1616
import org.junit.Assert;
1717
import org.junit.Test;
1818

@@ -30,7 +30,7 @@ public class TestOpencsvCoverage {
3030
new TestEntry( "default_doc_fail1" , false )
3131
};
3232

33-
private final static DocTypeHandler[] HANDLERS = { OpenCSVTypeHandler.HANDLER };
33+
private final static DocTypeHandler[] HANDLERS = { OpenCSVTypeHandlerUTF8.HANDLER };
3434

3535
private boolean worker( String id, String path, boolean result ) {
3636
SimpleValue<Boolean> res = new SimpleValue<>(false);

fj-doc-playground-quarkus/src/main/java/org/fugerit/java/doc/playground/config/InitPlayground.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,4 +30,8 @@ void onStart(@Observes StartupEvent ev) {
3030
log.info( "InitPlayground end" );
3131
}
3232

33+
public static DocTypeHandler findHandler( String id ) {
34+
return PROCESS_CONFIG.getFacade().findHandler( id );
35+
}
36+
3337
}

fj-doc-playground-quarkus/src/main/java/org/fugerit/java/doc/playground/doc/GenerateFacade.java

Lines changed: 1 addition & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -11,20 +11,13 @@
1111
import org.fugerit.java.core.function.SafeFunction;
1212
import org.fugerit.java.core.io.StreamIO;
1313
import org.fugerit.java.core.lang.helpers.StringUtils;
14-
import org.fugerit.java.doc.base.config.DocConfig;
1514
import org.fugerit.java.doc.base.config.DocInput;
1615
import org.fugerit.java.doc.base.config.DocOutput;
1716
import org.fugerit.java.doc.base.config.DocTypeHandler;
18-
import org.fugerit.java.doc.base.config.DocTypeHandlerXMLUTF8;
1917
import org.fugerit.java.doc.base.facade.DocFacadeSource;
2018
import org.fugerit.java.doc.base.parser.DocParser;
21-
import org.fugerit.java.doc.base.typehandler.markdown.SimpleMarkdownExtTypeHandler;
2219
import org.fugerit.java.doc.freemarker.config.FreeMarkerConfigStep;
2320
import org.fugerit.java.doc.freemarker.fun.SimpleMessageFun;
24-
import org.fugerit.java.doc.freemarker.html.FreeMarkerHtmlFragmentTypeHandlerEscapeUTF8;
25-
import org.fugerit.java.doc.mod.fop.FreeMarkerFopTypeHandler;
26-
import org.fugerit.java.doc.mod.opencsv.OpenCSVTypeHandler;
27-
import org.fugerit.java.doc.mod.poi.XlsxPoiTypeHandler;
2821
import org.fugerit.java.doc.playground.config.InitPlayground;
2922
import org.fugerit.java.doc.playground.facade.BasicInput;
3023
import org.fugerit.java.doc.playground.facade.InputFacade;
@@ -136,32 +129,7 @@ public DocTypeHandler findHandler( BasicInput input ) {
136129
DocTypeHandler handler = null;
137130
if ( StringUtils.isNotEmpty( input.getOutputFormat() ) ) {
138131
String outputFormat = input.getOutputFormat().toLowerCase();
139-
switch (outputFormat) {
140-
case DocConfig.TYPE_XLSX:
141-
handler = XlsxPoiTypeHandler.HANDLER;
142-
break;
143-
case DocConfig.TYPE_HTML:
144-
handler = FreeMarkerHtmlFragmentTypeHandlerEscapeUTF8.HANDLER;
145-
break;
146-
case DocConfig.TYPE_XML:
147-
handler = DocTypeHandlerXMLUTF8.HANDLER;
148-
break;
149-
case DocConfig.TYPE_CSV:
150-
handler = OpenCSVTypeHandler.HANDLER_UTF8;
151-
break;
152-
case DocConfig.TYPE_MD:
153-
handler = SimpleMarkdownExtTypeHandler.HANDLER_NOCOMMENTS_UTF8;
154-
break;
155-
case DocConfig.TYPE_FO:
156-
handler = FreeMarkerFopTypeHandler.HANDLER_UTF8;
157-
break;
158-
case InitPlayground.OUTPUT_FORMAT_PDF_A:
159-
handler = InitPlayground.PDFA_FOP_TYPE_HANDLER;
160-
break;
161-
default:
162-
handler = InitPlayground.PDF_FOP_TYPE_HANDLER;
163-
break;
164-
}
132+
handler = InitPlayground.findHandler( outputFormat );
165133
}
166134
return handler;
167135
}

fj-doc-playground-quarkus/src/main/resources/playground-config/fm-playground-doc-process.xml

Lines changed: 55 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -4,19 +4,62 @@
44
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
55
xsi:schemaLocation="https://freemarkerdocprocess.fugerit.org https://www.fugerit.org/data/java/doc/xsd/freemarker-doc-process-1-0.xsd" >
66

7-
<docHandlerConfig>
8-
<docHandler id="PDFA" info="pdf" type="org.fugerit.java.doc.mod.fop.PdfFopTypeHandler">
9-
<docHandlerCustomConfig charset="UTF-8" fop-config-mode="classloader"
10-
fop-config-classloader-path="playground-config/fop-config-pdfa.xml" pdf-a-mode="PDF/A-1a"/>
7+
<docHandlerConfig registerById="true">
8+
<docHandler id="PDF/A-1a" info="pdf" type="org.fugerit.java.doc.mod.fop.PdfFopTypeHandler">
9+
<docHandlerCustomConfig charset="UTF-8" fop-config-mode="inline" pdf-a-mode="PDF/A-1a">
10+
<fop version="1.0">
11+
<!-- Strict user configuration -->
12+
<strict-configuration>true</strict-configuration>
13+
<!-- Strict FO validation -->
14+
<strict-validation>true</strict-validation>
15+
<!-- Base URL for resolving relative URLs -->
16+
<base>.</base>
17+
<!-- Font Base URL for resolving relative font URLs -->
18+
<font-base>.</font-base>
19+
<!--
20+
NOTE: for PDF/A format all fonts, even the basic ones, myst be fully embdedded.
21+
https://xmlgraphics.apache.org/fop/2.8/pdfa.htm
22+
-->
23+
<renderers>
24+
<renderer mime="application/pdf">
25+
<!-- In this configuration the pdf-a-mode has been set via the freemarker-doc-process.xml
26+
<pdf-a-mode>PDF/A-1a</pdf-a-mode>
27+
<version>1.4</version>
28+
-->
29+
<fonts>
30+
<font embed-url="classpath://font/TitilliumWeb-Regular.ttf" embedding-mode="full">
31+
<font-triplet name="TitilliumWeb" style="normal" weight="normal"/>
32+
</font>
33+
<font embed-url="classpath://font/TitilliumWeb-Bold.ttf" embedding-mode="full">
34+
<font-triplet name="TitilliumWeb" style="normal" weight="bold"/>
35+
</font>
36+
<font embed-url="classpath://font/TitilliumWeb-Italic.ttf" embedding-mode="full">
37+
<font-triplet name="TitilliumWeb" style="italic" weight="normal"/>
38+
</font>
39+
<font embed-url="classpath://font/TitilliumWeb-BoldItalic.ttf" embedding-mode="full">
40+
<font-triplet name="TitilliumWeb" style="italic" weight="bold"/>
41+
</font>
42+
</fonts>
43+
</renderer>
44+
</renderers>
45+
<!-- Source resolution in dpi (dots/pixels per inch) for determining the size of pixels in SVG and bitmap images, default: 72dpi -->
46+
<source-resolution>72</source-resolution>
47+
<!-- Target resolution in dpi (dots/pixels per inch) for specifying the target resolution for generated bitmaps, default: 72dpi -->
48+
<target-resolution>72</target-resolution>
49+
<!-- default page-height and page-width, in case
50+
value is specified as auto -->
51+
<default-page-settings height="11in" width="8.26in"/>
52+
</fop>
53+
</docHandlerCustomConfig>
1154
</docHandler>
12-
<docHandler id="md-ext" info="md" type="org.fugerit.java.doc.base.typehandler.markdown.SimpleMarkdownExtTypeHandler" />
13-
<docHandler id="xml-doc" info="xml" type="org.fugerit.java.doc.base.config.DocTypeHandlerXMLUTF8" />
14-
<docHandler id="xls-poi" info="xls" type="org.fugerit.java.doc.mod.poi.XlsPoiTypeHandler" />
15-
<docHandler id="xlsx-poi" info="xlsx" type="org.fugerit.java.doc.mod.poi.XlsxPoiTypeHandler" />
16-
<docHandler id="fo-fop" info="fo" type="org.fugerit.java.doc.mod.fop.FreeMarkerFopTypeHandlerUTF8" />
17-
<docHandler id="pdf-fop" info="pdf" type="org.fugerit.java.doc.mod.fop.PdfFopTypeHandler"/>
18-
<docHandler id="html-fm" info="html" type="org.fugerit.java.doc.freemarker.html.FreeMarkerHtmlTypeHandlerUTF8" />
19-
<docHandler id="html-fragment-fm" info="fhtml" type="org.fugerit.java.doc.freemarker.html.FreeMarkerHtmlFragmentTypeHandlerUTF8" />
55+
<docHandler id="md" info="md" type="org.fugerit.java.doc.base.typehandler.markdown.SimpleMarkdownExtTypeHandlerNoCommentsUTF8" />
56+
<docHandler id="xml" info="xml" type="org.fugerit.java.doc.base.config.DocTypeHandlerXMLUTF8" />
57+
<docHandler id="xls" info="xls" type="org.fugerit.java.doc.mod.poi.XlsPoiTypeHandler" />
58+
<docHandler id="xlsx" info="xlsx" type="org.fugerit.java.doc.mod.poi.XlsxPoiTypeHandler" />
59+
<docHandler id="fo" info="fo" type="org.fugerit.java.doc.mod.fop.FreeMarkerFopTypeHandlerUTF8" />
60+
<docHandler id="pdf" info="pdf" type="org.fugerit.java.doc.mod.fop.PdfFopTypeHandler"/>
61+
<docHandler id="html" info="html" type="org.fugerit.java.doc.freemarker.html.FreeMarkerHtmlFragmentTypeHandlerEscapeUTF8" />
62+
<docHandler id="csv" info="csv" type="org.fugerit.java.doc.mod.opencsv.OpenCSVTypeHandlerUTF8" />
2063
</docHandlerConfig>
2164

2265
</freemarker-doc-process-config>

fj-doc-playground-quarkus/src/main/resources/playground-config/fop-config-pdfa.xml

Lines changed: 0 additions & 52 deletions
This file was deleted.

0 commit comments

Comments
 (0)