Skip to content

Commit 49e14d1

Browse files
committed
AutodocDocConfig converted to new configuration model
1 parent 5c63caf commit 49e14d1

File tree

5 files changed

+73
-13
lines changed

5 files changed

+73
-13
lines changed

fj-doc-lib-autodoc/src/main/java/org/fugerit/java/doc/lib/autodoc/AutodocDocConfig.java

Lines changed: 7 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -14,40 +14,34 @@
1414
import org.fugerit.java.doc.base.config.DocTypeHandler;
1515
import org.fugerit.java.doc.base.facade.DocFacade;
1616
import org.fugerit.java.doc.base.model.DocBase;
17-
import org.fugerit.java.doc.base.process.DocProcessConfig;
1817
import org.fugerit.java.doc.base.process.DocProcessContext;
1918
import org.fugerit.java.doc.base.process.DocProcessData;
2019
import org.fugerit.java.doc.freemarker.html.FreeMarkerHtmlFragmentTypeHandler;
20+
import org.fugerit.java.doc.freemarker.process.FreemarkerDocProcessConfig;
21+
import org.fugerit.java.doc.freemarker.process.FreemarkerDocProcessConfigFacade;
2122
import org.fugerit.java.doc.lib.autodoc.detail.AutodocDetailModel;
2223
import org.fugerit.java.doc.lib.autodoc.parser.model.AutodocModel;
2324

2425
public class AutodocDocConfig {
2526

2627

27-
private final static String CONFIG_PATH = "fj_doc_lib_autodoc/doc-process-config.xml";
28+
private final static String CONFIG_PATH = "cl://fj_doc_lib_autodoc/fm-doc-process-config-autodoc.xml";
2829

29-
private DocProcessConfig config;
30+
private FreemarkerDocProcessConfig config;
3031

31-
private AutodocDocConfig( DocProcessConfig config ) {
32+
private AutodocDocConfig( FreemarkerDocProcessConfig config ) {
3233
this.config = config;
3334
}
3435

3536
public static AutodocDocConfig newConfig() throws ConfigException {
36-
AutodocDocConfig autodocDocConfig = null;
37-
try ( InputStream is = ClassHelper.loadFromDefaultClassLoader(CONFIG_PATH) ) {
38-
DocProcessConfig config = DocProcessConfig.loadConfig( is );
39-
autodocDocConfig = new AutodocDocConfig( config );
40-
} catch (Exception e) {
41-
throw new ConfigException( "Error creating configuration : "+e, e );
42-
}
43-
return autodocDocConfig;
37+
return new AutodocDocConfig( FreemarkerDocProcessConfigFacade.loadConfigSafe(CONFIG_PATH) );
4438
}
4539

4640
public static final String CHAIN_ID_AUTODOC = "autodoc";
4741

4842
public static final String CHAIN_ID_AUTODOC_DETAIL = "autodoc_detail";
4943

50-
public DocProcessConfig getConfig() {
44+
public FreemarkerDocProcessConfig getConfig() {
5145
return config;
5246
}
5347

Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<freemarker-doc-process-config
3+
xmlns="https://freemarkerdocprocess.fugerit.org"
4+
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
5+
xsi:schemaLocation="https://freemarkerdocprocess.fugerit.org https://www.fugerit.org/data/java/doc/xsd/freemarker-doc-process-1-0.xsd" >
6+
7+
<!--
8+
Configuration stub version : 003 (2023-07-19)
9+
-->
10+
11+
<docHandlerConfig>
12+
<!-- Type handler for markdown format -->
13+
<docHandler id="md-ext" info="md" type="org.fugerit.java.doc.base.typehandler.markdown.SimpleMarkdownExtTypeHandler" />
14+
<!-- Type henalder for xml format, generates the source xml:doc -->
15+
<docHandler id="xml-doc" info="xml" type="org.fugerit.java.doc.base.config.DocTypeHandlerXMLUTF8" />
16+
<!-- Type handlers for html using freemarker -->
17+
<docHandler id="html-fm" info="html" type="org.fugerit.java.doc.freemarker.html.FreeMarkerHtmlTypeHandlerUTF8" />
18+
<!-- Type handlers for html using freemarker (fragment version, only generates body content no html or head part -->
19+
<docHandler id="html-fragment-fm" info="fhtml" type="org.fugerit.java.doc.freemarker.html.FreeMarkerHtmlFragmentTypeHandlerUTF8" />
20+
</docHandlerConfig>
21+
22+
23+
<docChain id="shared">
24+
<chainStep stepType="config">
25+
<config
26+
id="FJ_DOC_LIB_AUTODOC"
27+
class="org.fugerit.java.doc.lib.autodoc.AutodocModule"
28+
exception-handler="RETHROW_HANDLER"
29+
fallback-on-null-loop-variable="false"
30+
log-exception="false"
31+
mode="class"
32+
path="/fj_doc_lib_autodoc/template/"
33+
version="2.3.29"
34+
wrap-unchecked-exceptions="true"
35+
/>
36+
</chainStep>
37+
<chainStep stepType="function">
38+
<function name="annotationAsSingleStringFun" value="org.fugerit.java.doc.lib.autodoc.fun.AnnotationAsSingleStringFun"/>
39+
</chainStep>
40+
</docChain>
41+
42+
<docChain id="autodoc" parent="shared">
43+
<chainStep stepType="complex" map-atts="autodocModel" template-path="${chainId}.ftl">
44+
</chainStep>
45+
</docChain>
46+
47+
<docChain id="autodoc_detail" parent="shared">
48+
<chainStep stepType="complex" map-atts="autodocDetailModel" template-path="${chainId}.ftl">
49+
</chainStep>
50+
</docChain>
51+
52+
53+
</freemarker-doc-process-config>

fj-doc-tool/src/test/java/test/org/fugerit/java/doc/tool/TestConvertConfigTool.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,11 @@ public void testConvertConfigSample() {
1414
this.docToolWorker( "src/test/resources/params-test/convert-config-sample.properties" );
1515
}
1616

17+
@Test
18+
public void testConvertConfigAutodoc() {
19+
this.docToolWorker( "src/test/resources/params-test/convert-config-autodoc.properties" );
20+
}
21+
1722
@Test
1823
public void testConvertConfigHelp() {
1924
this.docToolWorker( "src/test/resources/params-test/convert-config-help.properties" );

fj-doc-lib-autodoc/src/main/resources/fj_doc_lib_autodoc/doc-process-config.xml renamed to fj-doc-tool/src/test/resources/convert-config-test/doc-process-autodoc.xml

File renamed without changes.
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
# test params for generate stub
2+
tool=generate-stub
3+
input=src/test/resources/convert-config-test/doc-process-autodoc.xml
4+
output=target/autodoc-new-process-config.xml
5+
enable-opencsv=1
6+
enable-fop-base=1
7+
enable-fop-full=0
8+
enable-poi=1

0 commit comments

Comments
 (0)