Author: veithen
Date: Tue Apr 28 20:23:09 2009
New Revision: 769521

URL: http://svn.apache.org/viewvc?rev=769521&view=rev
Log:
Some cleanup in the support classes for XSLTMediator:
* Made AXIOMSourceBuilder and AXIOMResultBuilder more symmetric.
* DOOMResultBuilder: replaced deprecated features by the proper methods/classes 
introduced in Axiom 1.2.8.
* Removed some exclusion rules from XSLTMediatorTest: Saxon works correctly 
with DOOM from Axiom 1.2.8.

Modified:
    
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/util/jaxp/AXIOMResultBuilder.java
    
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/util/jaxp/AXIOMSourceBuilder.java
    
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/util/jaxp/DOOMResultBuilder.java
    
synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/transform/XSLTMediatorTest.java

Modified: 
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/util/jaxp/AXIOMResultBuilder.java
URL: 
http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/util/jaxp/AXIOMResultBuilder.java?rev=769521&r1=769520&r2=769521&view=diff
==============================================================================
--- 
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/util/jaxp/AXIOMResultBuilder.java
 (original)
+++ 
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/util/jaxp/AXIOMResultBuilder.java
 Tue Apr 28 20:23:09 2009
@@ -21,25 +21,21 @@
 
 import java.nio.charset.Charset;
 
-import javax.xml.transform.Result;
-import javax.xml.transform.sax.SAXResult;
-
 import org.apache.axiom.om.OMElement;
-import org.apache.axiom.om.impl.builder.SAXOMBuilder;
+import org.apache.axiom.om.impl.jaxp.OMResult;
 
 /**
- * {...@link ResultBuilder} implementation that relies on {...@link SAXResult} 
and
- * {...@link SAXOMBuilder}.
+ * {...@link ResultBuilder} implementation that relies on {...@link OMResult}.
  */
 public class AXIOMResultBuilder implements ResultBuilder {
-    private final SAXOMBuilder builder = new SAXOMBuilder();
+    private final OMResult result = new OMResult();
     
-    public Result getResult() {
-        return new SAXResult(builder);
+    public OMResult getResult() {
+        return result;
     }
 
     public OMElement getNode(Charset charset) {
-        return builder.getRootElement();
+        return result.getRootElement();
     }
 
     public void release() {

Modified: 
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/util/jaxp/AXIOMSourceBuilder.java
URL: 
http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/util/jaxp/AXIOMSourceBuilder.java?rev=769521&r1=769520&r2=769521&view=diff
==============================================================================
--- 
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/util/jaxp/AXIOMSourceBuilder.java
 (original)
+++ 
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/util/jaxp/AXIOMSourceBuilder.java
 Tue Apr 28 20:23:09 2009
@@ -19,8 +19,6 @@
 
 package org.apache.synapse.util.jaxp;
 
-import javax.xml.transform.Source;
-
 import org.apache.axiom.om.OMElement;
 import org.apache.axiom.om.impl.jaxp.OMSource;
 
@@ -29,7 +27,7 @@
  * using {...@link OMSource}.
  */
 public class AXIOMSourceBuilder implements SourceBuilder {
-    public Source getSource(OMElement node) {
+    public OMSource getSource(OMElement node) {
         return new OMSource(node);
     }
 

Modified: 
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/util/jaxp/DOOMResultBuilder.java
URL: 
http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/util/jaxp/DOOMResultBuilder.java?rev=769521&r1=769520&r2=769521&view=diff
==============================================================================
--- 
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/util/jaxp/DOOMResultBuilder.java
 (original)
+++ 
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/util/jaxp/DOOMResultBuilder.java
 Tue Apr 28 20:23:09 2009
@@ -27,7 +27,7 @@
 
 import org.apache.axiom.om.OMAbstractFactory;
 import org.apache.axiom.om.OMElement;
-import org.apache.axiom.om.impl.dom.jaxp.DocumentBuilderFactoryImpl;
+import org.apache.axiom.om.impl.dom.jaxp.DOOMDocumentBuilderFactory;
 import org.apache.axiom.om.util.ElementHelper;
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
@@ -45,11 +45,8 @@
     private Document document;
 
     public Result getResult() {
-        // TODO: this changes some system properties; see if we can avoid this
-        //       or at least reset the properties afterwards
-        DocumentBuilderFactoryImpl.setDOOMRequired(true);
         try {
-            document = 
DocumentBuilderFactoryImpl.newInstance().newDocumentBuilder().newDocument();
+            document = new 
DOOMDocumentBuilderFactory().newDocumentBuilder().newDocument();
         } catch (ParserConfigurationException e) {
             handleException("Unable to create empty DOOM document", e);
         }

Modified: 
synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/transform/XSLTMediatorTest.java
URL: 
http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/transform/XSLTMediatorTest.java?rev=769521&r1=769520&r2=769521&view=diff
==============================================================================
--- 
synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/transform/XSLTMediatorTest.java
 (original)
+++ 
synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/mediators/transform/XSLTMediatorTest.java
 Tue Apr 28 20:23:09 2009
@@ -19,10 +19,6 @@
 
 package org.apache.synapse.mediators.transform;
 
-import java.util.Arrays;
-import java.util.HashSet;
-import java.util.Set;
-
 import javax.xml.namespace.QName;
 import javax.xml.transform.TransformerFactory;
 
@@ -77,30 +73,24 @@
         return suite;
     }
     
-    private static Set<String> testsToExclude = new HashSet<String>(
-            Arrays.asList("testSaxonDOOMSourceDOOMResult", 
"testSaxonDOOMSourceStreamResult",
-                    "testSaxonDOOMSourceAXIOMResult"));
-    
     private static void addGenericTests(TestSuite suite, final String 
processorName,
             final Class<? extends TransformerFactory> transformerFactoryClass) 
{
         
         for (final Class sbf : sourceBuilderFactories) {
             for (final Class rbf : resultBuilderFactories) {
                 String testName = "test" + processorName + shortName(sbf) + 
shortName(rbf);
-                if (!testsToExclude.contains(testName)) {
-                    suite.addTest(new TestCase(testName) {
-                        @Override
-                        public void runTest() throws Throwable {
-                            String oldTransformerFactory =
-                                
TransformerFactory.newInstance().getClass().getName();
-                            
System.setProperty(TransformerFactory.class.getName(),
-                                    transformerFactoryClass.getName());
-                            test(sbf, rbf);
-                            
System.setProperty(TransformerFactory.class.getName(),
-                                    oldTransformerFactory);
-                        }
-                    });
-                }
+                suite.addTest(new TestCase(testName) {
+                    @Override
+                    public void runTest() throws Throwable {
+                        String oldTransformerFactory =
+                            
TransformerFactory.newInstance().getClass().getName();
+                        System.setProperty(TransformerFactory.class.getName(),
+                                transformerFactoryClass.getName());
+                        test(sbf, rbf);
+                        System.setProperty(TransformerFactory.class.getName(),
+                                oldTransformerFactory);
+                    }
+                });
             }
         }
     }


Reply via email to