Interface TypedOutletSaxHandlerFactory
-
- All Known Implementing Classes:
CopyOutletSaxHandlerFactory
,GroovyOutletSaxHandlerFactory
,JavaOutletSaxHandlerFactory
,VelocityOutletSaxHandlerFactory
public interface TypedOutletSaxHandlerFactory
Classes implementing this interface are responsible for creatingOutletSaxHandler
s for a specific outlet type.
-
-
Method Summary
Modifier and Type Method Description Outlet
createOutletForTemplate(String templatePath, ConfigurationProvider configurationProvider)
Creates an outlet for a template with the given file name.OutletSaxHandler
getOutletSaxHandler(QualifiedName outletName, ConfigurationProvider configurationProvider, UnitDescriptor unitDescriptor, ConfigurationHandlers configurationHandlers)
Returns a OutletSaxHandler for reading in the configuration of a outlet.Collection<String>
getTemplatesFilenameExtensionsForScan()
Returns the filename extensions for templates which define outlets of this type.String
getType()
Returns the outlet type handled by the OutletSaxHandlers which are created by this factory.
-
-
-
Method Detail
-
getType
String getType()
Returns the outlet type handled by the OutletSaxHandlers which are created by this factory.- Returns:
- the type of the outlets, not null.
-
getTemplatesFilenameExtensionsForScan
Collection<String> getTemplatesFilenameExtensionsForScan()
Returns the filename extensions for templates which define outlets of this type. These extensions are used for scanning the templates tree.- Returns:
- the filename extension for scanning the templates, or null if the templates should not be scanned.
-
createOutletForTemplate
Outlet createOutletForTemplate(String templatePath, ConfigurationProvider configurationProvider) throws ConfigurationException
Creates an outlet for a template with the given file name.- Parameters:
templatePath
- the path to the template, relative to the templates directory, not null.configurationProvider
- the configuration provider, not null.- Returns:
- the outlet, not null.
- Throws:
ConfigurationException
- if the outlet cannot be created.UnsupportedOperationException
- if the OutletSaxHandlerFactory is not template based or cannot create outlets on file name information alone.
-
getOutletSaxHandler
OutletSaxHandler getOutletSaxHandler(QualifiedName outletName, ConfigurationProvider configurationProvider, UnitDescriptor unitDescriptor, ConfigurationHandlers configurationHandlers) throws SAXException
Returns a OutletSaxHandler for reading in the configuration of a outlet. The SAX Handler is used as a delegate handler whenever a outlet element with the matching type is encountered in a outlet configuration file.- Parameters:
outletName
- the name for the outlet which configuration will be read in by the generated SaxHandlerFactory, or null if the name of the outlet should be determined from the parsed xml.configurationProvider
- The access object for the configuration files, not null.unitDescriptor
- The description of the generation unit, not null.configurationHandlers
- the available configuration handlers, not null.- Returns:
- a SAX delegate handler for parsing the configuration with the given type.
- Throws:
SAXException
- if the SAX Handler for the outlet can not be created from the given XML element.
-
-