You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by da...@apache.org on 2010/09/17 13:24:27 UTC

svn commit: r998075 - in /camel/trunk/components/camel-atom/src/main/java/org/apache/camel/component: atom/AtomEntryPollingConsumer.java feed/FeedEntryPollingConsumer.java

Author: davsclaus
Date: Fri Sep 17 11:24:27 2010
New Revision: 998075

URL: http://svn.apache.org/viewvc?rev=998075&view=rev
Log:
CAMEL-3124: Fixed atom/rss polling entries with throttle enabled causing it to re-load feed on each pool, where as it can just rememeber the feed.

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/feed/FeedEntryPollingConsumer.java

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=998075&r1=998074&r2=998075&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 Sep 17 11:24:27 2010
@@ -67,7 +67,7 @@ public class AtomEntryPollingConsumer ex
 
     @Override
     protected void resetList() {
-        document = null;    
+        document = null;
     }
     
     @Override

Modified: camel/trunk/components/camel-atom/src/main/java/org/apache/camel/component/feed/FeedEntryPollingConsumer.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-atom/src/main/java/org/apache/camel/component/feed/FeedEntryPollingConsumer.java?rev=998075&r1=998074&r2=998075&view=diff
==============================================================================
--- camel/trunk/components/camel-atom/src/main/java/org/apache/camel/component/feed/FeedEntryPollingConsumer.java (original)
+++ camel/trunk/components/camel-atom/src/main/java/org/apache/camel/component/feed/FeedEntryPollingConsumer.java Fri Sep 17 11:24:27 2010
@@ -24,13 +24,13 @@ import org.apache.camel.Processor;
 
 /**
  * Consumer to poll feeds and return each entry from the feed step by step.
- *
  */
 public abstract class FeedEntryPollingConsumer extends FeedPollingConsumer {
     protected int entryIndex;
     protected EntryFilter entryFilter;
     protected List list;
     protected boolean throttleEntries;
+    protected Object feed;
 
     public FeedEntryPollingConsumer(FeedEndpoint endpoint, Processor processor, boolean filter, Date lastUpdate, boolean throttleEntries) {
         super(endpoint, processor);
@@ -41,8 +41,11 @@ public abstract class FeedEntryPollingCo
     }
 
     public void poll() throws Exception {
-        Object feed = createFeed();
-        populateList(feed);   
+        if (feed == null) {
+            // populate new feed
+            feed = createFeed();
+            populateList(feed);
+        }
 
         while (hasNextEntry()) {
             Object entry = list.get(entryIndex--);
@@ -61,7 +64,8 @@ public abstract class FeedEntryPollingCo
             }
         }
 
-        // reset list to be able to poll again
+        // reset feed and list to be able to poll again
+        feed = null;
         resetList();
     }