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 2011/10/28 10:56:18 UTC

svn commit: r1190212 - in /camel/trunk: components/camel-atom/src/main/java/org/apache/camel/component/atom/ parent/

Author: ningjiang
Date: Fri Oct 28 08:56:17 2011
New Revision: 1190212

URL: http://svn.apache.org/viewvc?rev=1190212&view=rev
Log:
CAMEL-4592 AtomUtils.parseDocument() should be set with right TCCL

Modified:
    camel/trunk/components/camel-atom/src/main/java/org/apache/camel/component/atom/AtomEntryPollingConsumer.java
    camel/trunk/components/camel-atom/src/main/java/org/apache/camel/component/atom/AtomPollingConsumer.java
    camel/trunk/components/camel-atom/src/main/java/org/apache/camel/component/atom/AtomUtils.java
    camel/trunk/parent/pom.xml

Modified: camel/trunk/components/camel-atom/src/main/java/org/apache/camel/component/atom/AtomEntryPollingConsumer.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-atom/src/main/java/org/apache/camel/component/atom/AtomEntryPollingConsumer.java?rev=1190212&r1=1190211&r2=1190212&view=diff
==============================================================================
--- camel/trunk/components/camel-atom/src/main/java/org/apache/camel/component/atom/AtomEntryPollingConsumer.java (original)
+++ camel/trunk/components/camel-atom/src/main/java/org/apache/camel/component/atom/AtomEntryPollingConsumer.java Fri Oct 28 08:56:17 2011
@@ -43,16 +43,7 @@ public class AtomEntryPollingConsumer ex
     
     private Document<Feed> getDocument() throws IOException, ParseException {
         if (document == null) {
-            ClassLoader old = Thread.currentThread().getContextClassLoader();
-            try {
-                if (endpoint.getCamelContext().getApplicationContextClassLoader() != null) {
-                    Thread.currentThread().setContextClassLoader(endpoint.getCamelContext().getApplicationContextClassLoader());
-                    LOG.debug("set the TCCL to be " + endpoint.getCamelContext().getApplicationContextClassLoader());
-                }
-                document = AtomUtils.parseDocument(endpoint.getFeedUri());
-            } finally {
-                Thread.currentThread().setContextClassLoader(old);
-            }
+            document = AtomUtils.parseDocument(endpoint.getFeedUri());
             Feed root = document.getRoot();
             if (endpoint.isSortEntries()) {
                 sortEntries(root);

Modified: camel/trunk/components/camel-atom/src/main/java/org/apache/camel/component/atom/AtomPollingConsumer.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-atom/src/main/java/org/apache/camel/component/atom/AtomPollingConsumer.java?rev=1190212&r1=1190211&r2=1190212&view=diff
==============================================================================
--- camel/trunk/components/camel-atom/src/main/java/org/apache/camel/component/atom/AtomPollingConsumer.java (original)
+++ camel/trunk/components/camel-atom/src/main/java/org/apache/camel/component/atom/AtomPollingConsumer.java Fri Oct 28 08:56:17 2011
@@ -39,16 +39,9 @@ public class AtomPollingConsumer extends
 
     @Override
     protected Object createFeed() throws IOException {
-        ClassLoader old = Thread.currentThread().getContextClassLoader();
-        try {
-            if (endpoint.getCamelContext().getApplicationContextClassLoader() != null) {
-                Thread.currentThread().setContextClassLoader(endpoint.getCamelContext().getApplicationContextClassLoader());
-                LOG.debug("set the TCCL to be " + endpoint.getCamelContext().getApplicationContextClassLoader());
-            }
-            Document<Feed> document = AtomUtils.parseDocument(endpoint.getFeedUri());
-            return document.getRoot();
-        } finally {
-            Thread.currentThread().setContextClassLoader(old);
-        }
+
+        Document<Feed> document = AtomUtils.parseDocument(endpoint.getFeedUri());
+        return document.getRoot();
+
     }
 }

Modified: camel/trunk/components/camel-atom/src/main/java/org/apache/camel/component/atom/AtomUtils.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-atom/src/main/java/org/apache/camel/component/atom/AtomUtils.java?rev=1190212&r1=1190211&r2=1190212&view=diff
==============================================================================
--- camel/trunk/components/camel-atom/src/main/java/org/apache/camel/component/atom/AtomUtils.java (original)
+++ camel/trunk/components/camel-atom/src/main/java/org/apache/camel/component/atom/AtomUtils.java Fri Oct 28 08:56:17 2011
@@ -52,7 +52,16 @@ public final class AtomUtils {
      */
     public static Document<Feed> parseDocument(String uri) throws IOException, ParseException {
         InputStream in = new URL(uri).openStream();
-        return getAtomParser().parse(in);
+        Parser parser = getAtomParser();
+        // set the thread context loader with the ParserClassLoader
+        ClassLoader old = Thread.currentThread().getContextClassLoader();
+        try {
+            Thread.currentThread().setContextClassLoader(parser.getClass().getClassLoader());
+            return parser.parse(in);
+        } finally {
+            Thread.currentThread().setContextClassLoader(old);
+        }
+            
     }
 
 }

Modified: camel/trunk/parent/pom.xml
URL: http://svn.apache.org/viewvc/camel/trunk/parent/pom.xml?rev=1190212&r1=1190211&r2=1190212&view=diff
==============================================================================
--- camel/trunk/parent/pom.xml (original)
+++ camel/trunk/parent/pom.xml Fri Oct 28 08:56:17 2011
@@ -34,7 +34,7 @@
 
   <properties>
     <compiler.fork>true</compiler.fork>
-    <abdera-version>1.1.2</abdera-version>
+    <abdera-version>1.1.3</abdera-version>
     <!-- Note that activemq dependency is only used for testing! -->
     <activemq-version>5.5.0</activemq-version>
     <ahc-version>1.6.5</ahc-version>