Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Property

Default

Description

splitEntries

true

If true Camel will poll the feed and for the subsequent polls return each entry poll by poll. If the feed contains 7 entries then Camel will return the first entry on the first poll, the 2nd entry on the next poll, until no more entries where as Camel will do a new update on the feed. If false then Camel will poll a fresh feed on every invocation.

filter

true

Is only used by the split entries to filter the entries to return. Camel will default use the UpdateDateFilter that only return new entries from the feed. So the client consuming from the feed never receives the same entry more than once. The filter will return the entries ordered by the newest last.

lastUpdate

null

Is only used by the filter, as the starting timestamp for selection never entries (uses the entry.updated timestamp). Syntax format is: yyyy-MM-ddTHH:MM:ss. Example: 2007-12-24T17:45:59.

consumer.delay

60000

Delay in millis between each poll

consumer.initialDelay

1000

Millis before polling starts

consumer.userFixedDelay

false

true to use fixed delay between pools, otherwise fixed rate is used. See ScheduledExecutorService in JDK for details.

Exchange data

...

types

Camel will set the in body on the returned Exchange with a ROME SyndFeed. Depending on the splitEntries flag Camel will either return a SyndFeed with one SyndEntry or a List of SyndEntrys.

...

Code Block
exchange.in.header("org.apache.camel.component.rss.feed", feed)

RSS Dataformat

The RSS component ships with an RSS dataformat that can be used to convert between String (as XML) and ROME RSS model objects.

  • marshal = from ROME SyndFeed to XML String
  • unmarshal = from XML String to ROME SyndFeed

A route using this would look something like this:

Wiki Markup
{snippet:id=ex|lang=java|url=activemq/camel/trunk/components/camel-rss/src/test/java/org/apache/camel/dataformat/rss/RssDataFormatTest.java}

The idea is to be able to use Camel's lovely built in expressions for manipulating RSS messages. As shown below, an XPath expression can be used to filter the RSS message:

Wiki Markup
{snippet:id=ex|lang=java|url=activemq/camel/trunk/components/camel-rss/src/test/java/org/apache/camel/dataformat/rss/RssFilterWithXPathTest.java}
Include Page
CAMEL:Endpoint See Also
CAMEL:Endpoint See Also