Author: ningjiang
Date: Tue Jan 13 22:35:23 2009
New Revision: 734346

URL: http://svn.apache.org/viewvc?rev=734346&view=rev
Log:
Merged revisions 734340,734342 via svnmerge from 
https://svn.apache.org/repos/asf/activemq/camel/trunk

........
  r734340 | ningjiang | 2009-01-14 14:01:43 +0800 (Wed, 14 Jan 2009) | 1 line
  
  CAMEL-1253 added support to set the TransformerFactory for the camel-xslt 
endponint
........
  r734342 | ningjiang | 2009-01-14 14:04:35 +0800 (Wed, 14 Jan 2009) | 1 line
  
  CAMEL-1253 Added the unit tests for camel-xslt components
........

Added:
    
activemq/camel/branches/camel-1.x/components/camel-saxon/src/test/java/org/apache/camel/component/xslt/
      - copied from r734342, 
activemq/camel/trunk/components/camel-saxon/src/test/java/org/apache/camel/component/xslt/
    
activemq/camel/branches/camel-1.x/components/camel-saxon/src/test/java/org/apache/camel/component/xslt/SaxonInvalidXsltFileTest.java
      - copied unchanged from r734342, 
activemq/camel/trunk/components/camel-saxon/src/test/java/org/apache/camel/component/xslt/SaxonInvalidXsltFileTest.java
    
activemq/camel/branches/camel-1.x/components/camel-saxon/src/test/java/org/apache/camel/component/xslt/SaxonXsltRouteTest.java
      - copied unchanged from r734342, 
activemq/camel/trunk/components/camel-saxon/src/test/java/org/apache/camel/component/xslt/SaxonXsltRouteTest.java
    
activemq/camel/branches/camel-1.x/components/camel-saxon/src/test/resources/org/apache/camel/component/xslt/
      - copied from r734342, 
activemq/camel/trunk/components/camel-saxon/src/test/resources/org/apache/camel/component/xslt/
    
activemq/camel/branches/camel-1.x/components/camel-saxon/src/test/resources/org/apache/camel/component/xslt/camelXsltContext.xml
      - copied unchanged from r734342, 
activemq/camel/trunk/components/camel-saxon/src/test/resources/org/apache/camel/component/xslt/camelXsltContext.xml
Modified:
    activemq/camel/branches/camel-1.x/   (props changed)
    
activemq/camel/branches/camel-1.x/components/camel-spring/src/main/java/org/apache/camel/component/xslt/XsltComponent.java

Propchange: activemq/camel/branches/camel-1.x/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Tue Jan 13 22:35:23 2009
@@ -1 +1 @@
-/activemq/camel/trunk:732943,733749,734053,734057-734058,734064,734130,734309
+/activemq/camel/trunk:732943,733749,734053,734057-734058,734064,734130,734309,734340-734342

Propchange: activemq/camel/branches/camel-1.x/
------------------------------------------------------------------------------
Binary property 'svnmerge-integrated' - no diff available.

Modified: 
activemq/camel/branches/camel-1.x/components/camel-spring/src/main/java/org/apache/camel/component/xslt/XsltComponent.java
URL: 
http://svn.apache.org/viewvc/activemq/camel/branches/camel-1.x/components/camel-spring/src/main/java/org/apache/camel/component/xslt/XsltComponent.java?rev=734346&r1=734345&r2=734346&view=diff
==============================================================================
--- 
activemq/camel/branches/camel-1.x/components/camel-spring/src/main/java/org/apache/camel/component/xslt/XsltComponent.java
 (original)
+++ 
activemq/camel/branches/camel-1.x/components/camel-spring/src/main/java/org/apache/camel/component/xslt/XsltComponent.java
 Tue Jan 13 22:35:23 2009
@@ -18,12 +18,15 @@
 
 import java.util.Map;
 
+import javax.xml.transform.TransformerFactory;
+
 import org.apache.camel.Endpoint;
 import org.apache.camel.Exchange;
 import org.apache.camel.builder.xml.XsltBuilder;
 import org.apache.camel.component.ResourceBasedComponent;
 import org.apache.camel.converter.jaxp.XmlConverter;
 import org.apache.camel.impl.ProcessorEndpoint;
+import org.apache.camel.util.ObjectHelper;
 import org.springframework.core.io.Resource;
 
 /**
@@ -52,7 +55,7 @@
 
         // lets allow the converter to be configured
         XmlConverter converter = null;
-        String converterName = getAndRemoveParameter(parameters, "converter", 
String.class);
+        String converterName = getAndRemoveParameter(parameters, "converter", 
String.class);        
         if (converterName != null) {
             converter = mandatoryLookup(converterName, XmlConverter.class);
         }
@@ -62,7 +65,26 @@
         if (converter != null) {
             xslt.setConverter(converter);
         }
-
+        
+        String transformerFactoryClassName = getAndRemoveParameter(parameters, 
"transformerFactoryClass", String.class);
+        TransformerFactory factory = null;
+        if (transformerFactoryClassName != null) {
+            Class factoryClass = 
ObjectHelper.loadClass(transformerFactoryClassName);
+            if (factoryClass != null) {
+                factory = (TransformerFactory) newInstance(factoryClass);
+            } else {
+                log.warn("Can't find the TransformerFactoryClass with the 
class name " + transformerFactoryClassName);
+            }
+        }
+        
+        String transformerFactoryName = getAndRemoveParameter(parameters, 
"transformerFactory", String.class);        
+        if (transformerFactoryName != null) {
+            factory = mandatoryLookup(transformerFactoryName, 
TransformerFactory.class);
+        }
+        
+        if (factory != null) {
+            xslt.getConverter().setTransformerFactory(factory);
+        }
         xslt.setTransformerInputStream(resource.getInputStream());
         configureXslt(xslt, uri, remaining, parameters);
         return new ProcessorEndpoint(uri, this, xslt);


Reply via email to