public class StyleSheetProvider extends Object
StyleSheetProvider
assembles a XSL-stylesheet from one master XSL-file and a various number of other
XSL-files to include. The insertion-point for the additional files must be set via setInsertBefore(String)
.Constructor and Description |
---|
StyleSheetProvider() |
Modifier and Type | Method and Description |
---|---|
void |
addStyleSheet(InputStream styleSheet,
String reference)
Adds an additional XSL-source to be included into the master source
|
void |
cleanup()
Closes all the previously used
InputStream s. |
protected void |
close(InputStream is) |
DocumentBuilder |
getDocumentBuilder() |
DocumentBuilderFactory |
getDocumentBuilderFactory() |
String |
getId()
Returns a unique ID for this
StyleSheetProvider , which is build from the sorted set of reference names of
the additional stylesheets added via addStyleSheet(InputStream, String) . |
String |
getInsertBefore()
Returns the actual insertion-point
|
String |
getName() |
byte[] |
getStyleSheet(boolean deleteIncludes) |
byte[] |
getStyleSheet(boolean deleteIncludes,
OutputStream additionalOut)
Assembles the complete XSL stylesheet by including the sources added via
addStyleSheet(InputStream, String) and embedding them into the master source at the defined
insertion-point. |
Transformer |
getTransformer() |
TransformerFactory |
getTransformerFactory() |
void |
init()
|
boolean |
isValid()
Checks if this
StyleSheetProvider is valid, i.e. |
void |
setDocumentBuilder(DocumentBuilder documentBuilder) |
void |
setDocumentBuilderFactory(DocumentBuilderFactory documentBuilderFactory) |
void |
setInsertBefore(String insertBefore)
Sets the insertion point for the master source, at which additional stylesheets should be embedded.
|
void |
setMasterSource(InputStream masterXsl,
String templateRoot)
Sets the master XSL source for this
StyleSheetProvider . |
void |
setName(String name) |
void |
setTransformer(Transformer transformer) |
void |
setTransformerFactory(TransformerFactory transformerFactory) |
public void init()
public void setMasterSource(InputStream masterXsl, String templateRoot)
StyleSheetProvider
.masterXsl
- the master sourcetemplateRoot
- the absolute path to the directory where template residespublic void addStyleSheet(InputStream styleSheet, String reference)
styleSheet
- the additional sourcereference
- the name of the source, used for XSL-comments and loggingpublic byte[] getStyleSheet(boolean deleteIncludes)
getStyleSheet(boolean, OutputStream)
public byte[] getStyleSheet(boolean deleteIncludes, OutputStream additionalOut)
addStyleSheet(InputStream, String)
and embedding them into the master source at the defined
insertion-point.deleteIncludes
- If set to true
, all <xsl:include>
s eventually contained in the master
source will be removed before assembling the stylesheet. If set to false
, the
<xsl:include>
s are being kept and processed.additionalOut
- an additional OutputStream
to write the stylesheet to (optional)protected void close(InputStream is)
public DocumentBuilderFactory getDocumentBuilderFactory()
public void setDocumentBuilderFactory(DocumentBuilderFactory documentBuilderFactory)
public TransformerFactory getTransformerFactory()
public void setTransformerFactory(TransformerFactory transformerFactory)
public DocumentBuilder getDocumentBuilder()
public void setDocumentBuilder(DocumentBuilder documentBuilder)
public Transformer getTransformer()
public void setTransformer(Transformer transformer)
public String getInsertBefore()
public void setInsertBefore(String insertBefore)
insertBefore
- the insertion-point to usepublic String getName()
public void setName(String name)
public String getId()
StyleSheetProvider
, which is build from the sorted set of reference names of
the additional stylesheets added via addStyleSheet(InputStream, String)
.addStyleSheet(InputStream, String)
public void cleanup()
InputStream
s.public boolean isValid()
StyleSheetProvider
is valid, i.e. the master source is not null
.true
the master source is not null
, false
otherwiseCopyright © 2011–2023 aiticon GmbH. All rights reserved.