|
From: <tr...@us...> - 2003-08-06 00:18:10
|
Update of /cvsroot/babeldoc/babeldoc/modules/core/config/pipeline/documentation
In directory sc8-pr-cvs1:/tmp/cvs-serv32161/config/pipeline/documentation
Added Files:
documentation.properties scanner2docbook.xsl stage2docbook.xsl
Log Message:
Updated the documentation pipeline so that the pipeline and scanner documentation are created inline.
--- NEW FILE: documentation.properties ---
entryStage=attrdefault
#attrcheck.stageType=Scripting
#attrcheck.nextStage=choose
#attrcheck.language=javascript
#attrcheck.scriptFile=core/scripts/attrcheck.js
#attrcheck.attrs.style=Attribute 'Style' required. This attribute determines the output document type. One of: html, xhtml, text
#attrcheck.failOnError=true
attrdefault.stageType=Scripting
attrdefault.nextStage=callstages
attrdefault.language=javascript
attrdefault.scriptFile=core/scripts/attrdefault.js
attrdefault.attrs.style=html
callstages.stageType=CallStage
callstages.callStage=documentation.stagexml
callstages.discardResults=true
callstages.nextStage=callscanners
callscanners.stageType=CallStage
callscanners.callStage=documentation.scannerxml
callscanners.discardResults=true
callscanners.nextStage=choose
choose.stageType=Router
choose.nextStage=transform
choose.nextStage.pdftransform=#if(${document.get("style").equalsIgnoreCase("pdf")})true#end
transform.stageType=XslTransform
transform.transformationFile=readme/docbook-xsl/${document.get("style")}/docbook.xsl
transform.nextStage=writer
pdftransform.stageType=XslTransform
pdftransform.transformationFile=readme/docbook-xsl/fo/docbook.xsl
pdftransform.nextStage=fotransform
fotransform.stageType=XslFoTransform
fotransform.nextStage=writer
fotransform.outputType=pdf
fotransform.bufferSize=2048
writer.stageType=FileWriter
writer.nextStage=null
writer.outputFile=${document.get("file_name")}.${document.get("style")}
#
# Generate the stage xml
stagexml.stageType=Scripting
stagexml.language=javascript
stagexml.script=\
importClass(Packages.com.babeldoc.core.service.ServiceFactory);\
importClass(Packages.com.babeldoc.core.pipeline.PipelineStageType);\
importClass(Packages.java.lang.System);\
var services = ServiceFactory.getAllServices("PipelineStage");\
var keyset = services.keySet();\
var keyiter = keyset.iterator();\
var bufr = new java.lang.StringBuffer();\
bufr.append("<stage-defns>\\n");\
while(keyiter.hasNext()) {\
var key = keyiter.next();\
var objtype = PipelineStageType.getPipelineStageType(key);\
if(objtype!=null) {\
var obj = objtype.getTypeInstance();\
var info = obj.getInfo();\
if(info!=null) {\
var xmlfrag = info.toXml();\
bufr.append(xmlfrag);\
}\
}\
}\
bufr.append("</stage-defns>\\n");\
document.setBytes(bufr.toString().getBytes());\
document.setMimeType("text/xml");
stagexml.nextStage=stagexform
stagexform.stageType=XslTransform
stagexform.nextStage=stagewriter
stagexform.transformationFile=pipeline/documentation/stage2docbook.xsl
stagewriter.stageType=FileWriter
stagewriter.nextStage=null
stagewriter.outputFile=readme/userguide/pipelinestages.xml
#
# Generate the scanner xml
scannerxml.stageType=Scripting
scannerxml.language=javascript
scannerxml.script=\
importClass(Packages.com.babeldoc.core.service.ServiceFactory);\
importClass(Packages.com.babeldoc.scanner.ScannerWorkerType);\
importClass(Packages.java.lang.System);\
var services = ServiceFactory.getAllServices("ScannerWorker");\
var keyset = services.keySet();\
var keyiter = keyset.iterator();\
var bufr = new java.lang.StringBuffer();\
bufr.append("<scanner-defns>\\n");\
while(keyiter.hasNext()) {\
var key = keyiter.next();\
var objtype = ScannerWorkerType.getScannerWorkerType(key);\
if(objtype!=null) {\
var obj = objtype.getTypeInstance();\
var info = obj.getInfo();\
if(info!=null) {\
var xmlfrag = info.toXml();\
bufr.append(xmlfrag);\
}\
}\
}\
bufr.append("</scanner-defns>\\n");\
document.setBytes(bufr.toString().getBytes());\
document.setMimeType("text/xml");
scannerxml.nextStage=scannertransform
scannertransform.stageType=XslTransform
scannertransform.nextStage=scannerwriter
scannertransform.transformationFile=pipeline/documentation/scanner2docbook.xsl
scannerwriter.stageType=FileWriter
scannerwriter.nextStage=null
scannerwriter.outputFile=readme/userguide/scanners.xml
--- NEW FILE: scanner2docbook.xsl ---
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/scanner-defns">
<section>
<xsl:apply-templates/>
</section>
</xsl:template>
<xsl:template match="scanner-defn">
<section>
<title><xsl:value-of select="scanner-type"/></title>
<para><xsl:value-of select="scanner-desc"/></para>
<xsl:if test="count(scanner-option) > 0">
<informaltable frame="all">
<tgroup cols="4">
<thead>
<row>
<entry><para>Name</para></entry>
<entry><para>Type</para></entry>
<entry><para>number</para></entry>
<entry><para>description</para></entry>
</row>
</thead>
<tbody>
<xsl:apply-templates select="scanner-option"/>
</tbody>
</tgroup>
</informaltable>
</xsl:if>
</section>
</xsl:template>
<xsl:template match="scanner-option">
<row>
<entry><para><xsl:value-of select="option-name"/></para></entry>
<entry><para><xsl:value-of select="option-type"/></para></entry>
<entry><para><xsl:value-of select="option-number"/></para></entry>
<entry><para><xsl:value-of select="option-desc"/></para></entry>
</row>
</xsl:template>
</xsl:stylesheet>
--- NEW FILE: stage2docbook.xsl ---
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/stage-defns">
<section>
<xsl:apply-templates/>
</section>
</xsl:template>
<xsl:template match="stage-defn">
<section>
<title><xsl:value-of select="stage-type"/></title>
<para><xsl:value-of select="stage-desc"/></para>
<xsl:if test="count(stage-option) > 0">
<informaltable frame="all">
<tgroup cols="4">
<thead>
<row>
<entry><para>Name</para></entry>
<entry><para>Type</para></entry>
<entry><para>number</para></entry>
<entry><para>description</para></entry>
</row>
</thead>
<tbody>
<xsl:apply-templates select="stage-option"/>
</tbody>
</tgroup>
</informaltable>
</xsl:if>
</section>
</xsl:template>
<xsl:template match="stage-option">
<row>
<entry><para><xsl:value-of select="option-name"/></para></entry>
<entry><para><xsl:value-of select="option-type"/></para></entry>
<entry><para><xsl:value-of select="option-number"/></para></entry>
<entry><para><xsl:value-of select="option-desc"/></para></entry>
</row>
<xsl:if test="count(option-suboption) > 0">
<xsl:apply-templates select="option-suboption"/>
</xsl:if>
</xsl:template>
<xsl:template match="option-suboption">
<row>
<entry><para><xsl:value-of select="../option-name"/>.<xsl:value-of select="option-name"/></para></entry>
<entry><para><xsl:value-of select="option-type"/></para></entry>
<entry><para><xsl:value-of select="option-number"/></para></entry>
<entry><para><xsl:value-of select="option-desc"/></para></entry>
</row>
</xsl:template>
</xsl:stylesheet>
|