You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by ni...@apache.org on 2009/01/14 07:35:24 UTC

svn commit: r734346 - in /activemq/camel/branches/camel-1.x: ./ components/camel-saxon/src/test/java/org/apache/camel/component/xslt/ components/camel-saxon/src/test/resources/org/apache/camel/component/xslt/ components/camel-spring/src/main/java/org/a...

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);