filterType = getStreamFilterType();
configBuilderEvents.add(new ConfigBuilderEvent("SAX/DOM support characteristics of the Resource Configuration map:\n" + getResourceFilterCharacteristics()));
configBuilderEvents.add(new ConfigBuilderEvent("Using Stream Filter Type: " + filterType));
if(filterType == StreamFilterType.DOM) {
DOMContentDeliveryConfig domConfig = new DOMContentDeliveryConfig();
logger.debug("Using the DOM Stream Filter.");
domConfig.setAssemblyVisitBefores(visitorConfig.getDomAssemblyVisitBefores());
domConfig.setAssemblyVisitAfters(visitorConfig.getDomAssemblyVisitAfters());
domConfig.setProcessingVisitBefores(visitorConfig.getDomProcessingVisitBefores());
domConfig.setProcessingVisitAfters(visitorConfig.getDomProcessingVisitAfters());
domConfig.setSerailizationVisitors(visitorConfig.getDomSerializationVisitors());
domConfig.setVisitCleanables(visitorConfig.getVisitCleanables());
domConfig.setApplicationContext(applicationContext);
domConfig.setSmooksResourceConfigurations(resourceConfigTable);
domConfig.setDtd(dtd);
domConfig.getConfigBuilderEvents().addAll(configBuilderEvents);
if(sortVisitors) {
domConfig.sort();
}
domConfig.addToExecutionLifecycleSets();
domConfig.initializeXMLReaderPool();
domConfig.configureFilterBypass();
// Tell all interested listeners that the config builder for the profile has now been created.
fireEvent(ContentDeliveryConfigBuilderLifecycleEvent.CONFIG_BUILDER_CREATED);
return domConfig;