fr.gouv.culture.sdx.pipeline
Class AbstractXSLTTransformation

java.lang.Object
  extended by org.apache.avalon.framework.logger.AbstractLogEnabled
      extended by org.apache.cocoon.xml.AbstractXMLProducer
          extended by org.apache.cocoon.xml.AbstractXMLPipe
              extended by fr.gouv.culture.sdx.utils.xml.AbstractSdxXMLPipe
                  extended by fr.gouv.culture.sdx.pipeline.AbstractTransformation
                      extended by fr.gouv.culture.sdx.pipeline.AbstractXSLTTransformation
All Implemented Interfaces:
Transformation, Describable, Encodable, Identifiable, Localizable, SdxObject, org.apache.avalon.excalibur.pool.Poolable, org.apache.avalon.excalibur.pool.Recyclable, org.apache.avalon.framework.configuration.Configurable, org.apache.avalon.framework.context.Contextualizable, org.apache.avalon.framework.logger.LogEnabled, org.apache.avalon.framework.service.Serviceable, org.apache.cocoon.xml.XMLPipe, org.apache.cocoon.xml.XMLProducer, org.apache.excalibur.xml.sax.XMLConsumer, org.apache.excalibur.xml.sax.XMLizable, org.xml.sax.ContentHandler, org.xml.sax.ext.LexicalHandler
Direct Known Subclasses:
SAXONXSLTTransformation, XSLTTransformation

public abstract class AbstractXSLTTransformation
extends AbstractTransformation

An XSLTTransformation used in a SDX pipeline. This abstract class handles most of the work. It will only let subclasses handle the choice of a XSLT processor factory, in order to choose a specific XSLT processor if needed.


Nested Class Summary
 
Nested classes/interfaces inherited from interface fr.gouv.culture.sdx.utils.SdxObject
SdxObject.ConfigurationNode
 
Field Summary
 
Fields inherited from class fr.gouv.culture.sdx.pipeline.AbstractTransformation
_resolver, PARAMETER_NAME_DISABLE, PARAMETER_NAME_ENABLE, parameters, transParameters
 
Fields inherited from class fr.gouv.culture.sdx.utils.xml.AbstractSdxXMLPipe
_configuration, _context, _description, _encoding, _id, _locale, _logger, _manager, _xmlizable_objects, _xmlLang, isToSaxInitialized
 
Fields inherited from class org.apache.cocoon.xml.AbstractXMLProducer
contentHandler, EMPTY_CONTENT_HANDLER, lexicalHandler, xmlConsumer
 
Fields inherited from interface fr.gouv.culture.sdx.pipeline.Transformation
ATTRIBUTE_KEEP, ATTRIBUTE_SRC, ATTRIBUTE_TH, CLASS_NAME_SUFFIX, PACKAGE_QUALNAME
 
Fields inherited from interface fr.gouv.culture.sdx.utils.Encodable
DEFAULT_ENCODING
 
Constructor Summary
AbstractXSLTTransformation()
           
 
Method Summary
 void configure(org.apache.avalon.framework.configuration.Configuration configuration)
          Builds this object In addition to the parameters needed in the base configuration handled by the parent class, the "src" parameter is required and can be absolute or relative to the directory containing the application.xconf file or relative to the SDX installation.
abstract  java.lang.String getTransformerFactory()
          Returns the XSLT processor factory to use (Xalan, Saxon, ...)
protected  boolean initToSax()
          Init the DefaultContext class _xmlizable_objects with the objects in order to describ them in XML
 void setConsumer(org.apache.cocoon.xml.XMLConsumer consumer)
          Sets the XMLConsumer for this transformation.
 void startDocument()
           
 
Methods inherited from class fr.gouv.culture.sdx.pipeline.AbstractTransformation
getClassNameSuffix, getParameters, initVolatileObjectsToSax, isStepEnabled, recycle, service, setParameters, shouldKeepResult, verifyConfigurationParameters
 
Methods inherited from class fr.gouv.culture.sdx.utils.xml.AbstractSdxXMLPipe
configureDescription, contextualize, enableLogging, getBaseAttributes, getConfiguration, getContext, getDescription, getEncoding, getId, getLocale, getLog, getServiceManager, getXmlLang, setDescription, setEncoding, setId, setLocale, setUpSdxObject, setUpSdxObject, setXmlLang, toSAX, verifyConfigurationResources
 
Methods inherited from class org.apache.cocoon.xml.AbstractXMLPipe
characters, comment, endCDATA, endDocument, endDTD, endElement, endEntity, endPrefixMapping, ignorableWhitespace, processingInstruction, setDocumentLocator, skippedEntity, startCDATA, startDTD, startElement, startEntity, startPrefixMapping
 
Methods inherited from class org.apache.cocoon.xml.AbstractXMLProducer
setContentHandler, setLexicalHandler
 
Methods inherited from class org.apache.avalon.framework.logger.AbstractLogEnabled
getLogger, setupLogger, setupLogger, setupLogger
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.xml.sax.ContentHandler
characters, endDocument, endElement, endPrefixMapping, ignorableWhitespace, processingInstruction, setDocumentLocator, skippedEntity, startElement, startPrefixMapping
 
Methods inherited from interface org.xml.sax.ext.LexicalHandler
comment, endCDATA, endDTD, endEntity, startCDATA, startDTD, startEntity
 
Methods inherited from interface fr.gouv.culture.sdx.utils.SdxObject
getLog
 
Methods inherited from interface org.apache.avalon.framework.logger.LogEnabled
enableLogging
 
Methods inherited from interface org.apache.avalon.framework.context.Contextualizable
contextualize
 
Methods inherited from interface fr.gouv.culture.sdx.utils.Identifiable
getId, setId
 
Methods inherited from interface fr.gouv.culture.sdx.utils.Describable
getDescription, setDescription
 
Methods inherited from interface fr.gouv.culture.sdx.utils.Encodable
getEncoding, setEncoding
 
Methods inherited from interface fr.gouv.culture.sdx.utils.Localizable
getLocale, getXmlLang, setLocale, setXmlLang
 
Methods inherited from interface org.apache.excalibur.xml.sax.XMLizable
toSAX
 

Constructor Detail

AbstractXSLTTransformation

public AbstractXSLTTransformation()
Method Detail

configure

public void configure(org.apache.avalon.framework.configuration.Configuration configuration)
               throws org.apache.avalon.framework.configuration.ConfigurationException
Builds this object In addition to the parameters needed in the base configuration handled by the parent class, the "src" parameter is required and can be absolute or relative to the directory containing the application.xconf file or relative to the SDX installation.

Specified by:
configure in interface org.apache.avalon.framework.configuration.Configurable
Overrides:
configure in class AbstractTransformation
Parameters:
configuration - An Configuration object from the Pipeline

Sample configuration entry:

<sdx:transformation src = "path to stylesheet, can be absolute or relative to the directory containing this file" sdx:id = "step3" sdx:type = "xslt" keep = "true"/>

Throws:
org.apache.avalon.framework.configuration.ConfigurationException

setConsumer

public void setConsumer(org.apache.cocoon.xml.XMLConsumer consumer)
Sets the XMLConsumer for this transformation.

Specified by:
setConsumer in interface org.apache.cocoon.xml.XMLProducer
Overrides:
setConsumer in class org.apache.cocoon.xml.AbstractXMLProducer
Parameters:
consumer - The consumer for the SAX events of this transformation

startDocument

public void startDocument()
                   throws org.xml.sax.SAXException
Specified by:
startDocument in interface org.xml.sax.ContentHandler
Overrides:
startDocument in class org.apache.cocoon.xml.AbstractXMLPipe
Throws:
org.xml.sax.SAXException

initToSax

protected boolean initToSax()
Description copied from class: AbstractSdxXMLPipe
Init the DefaultContext class _xmlizable_objects with the objects in order to describ them in XML

Overrides:
initToSax in class AbstractTransformation

getTransformerFactory

public abstract java.lang.String getTransformerFactory()
Returns the XSLT processor factory to use (Xalan, Saxon, ...)

Returns:
The factory class name or null to use the first one in the classpath


Copyright © 2000-2010 Ministere de la culture et de la communication / AJLSM. All Rights Reserved.