You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@camel.apache.org by Charles Moulliard <cm...@gmail.com> on 2009/09/16 10:38:02 UTC
Question concerning pollingConsumer usage
Hi,
I will implement a bean component who will play the role of a
pollingConsumer. This bean will be called every x minutes from a quartz
endpoint. This bean component will read all messages posted in a queue until
the last one and create a list of objects who will be used next by marshal
function defined in the camel route.
Question : Can the method called in my "polling consumer" bean return a list
of objects or should it be defined as void ?
Regards,
Charles Moulliard
Senior Enterprise Architect
Apache Camel Committer
*****************************
blog : http://cmoulliard.blogspot.com
Re: Question concerning pollingConsumer usage
Posted by Charles Moulliard <cm...@gmail.com>.
This is what I have tested successfully
import java.util.ArrayList;
import java.util.List;
import org.apache.camel.Consume;
public class ReportingConsumer {
private List result = new ArrayList();
@Consume(ref = "queueReportingEndpoint")
public List collectMessages(List received) {
if (received != null) {
// Only pickup from the received list the first object (= Map of
Audit messages)
// and add it to List that we will send as result to the next
endpoint
result.add(received.get(0));
}
return result;
}
}
Charles Moulliard
Senior Enterprise Architect
Apache Camel Committer
*****************************
blog : http://cmoulliard.blogspot.com
On Wed, Sep 16, 2009 at 11:24 AM, Claus Ibsen <cl...@gmail.com> wrote:
> On Wed, Sep 16, 2009 at 10:38 AM, Charles Moulliard
> <cm...@gmail.com> wrote:
> > Hi,
> >
> > I will implement a bean component who will play the role of a
> > pollingConsumer. This bean will be called every x minutes from a quartz
> > endpoint. This bean component will read all messages posted in a queue
> until
> > the last one and create a list of objects who will be used next by
> marshal
> > function defined in the camel route.
> >
> > Question : Can the method called in my "polling consumer" bean return a
> list
> > of objects or should it be defined as void ?
> >
>
> You can return whatever you like from the bean, and its output will be
> used as payload for the camel message.
>
> from(quartz).beanRef("myBeanThatIsAPollingConsumer").marshal()
>
>
>
> > Regards,
> >
> > Charles Moulliard
> > Senior Enterprise Architect
> > Apache Camel Committer
> >
> > *****************************
> > blog : http://cmoulliard.blogspot.com
> >
>
>
>
> --
> Claus Ibsen
> Apache Camel Committer
>
> Open Source Integration: http://fusesource.com
> Blog: http://davsclaus.blogspot.com/
> Twitter: http://twitter.com/davsclaus
>
Re: Question concerning pollingConsumer usage
Posted by Claus Ibsen <cl...@gmail.com>.
On Wed, Sep 16, 2009 at 10:38 AM, Charles Moulliard
<cm...@gmail.com> wrote:
> Hi,
>
> I will implement a bean component who will play the role of a
> pollingConsumer. This bean will be called every x minutes from a quartz
> endpoint. This bean component will read all messages posted in a queue until
> the last one and create a list of objects who will be used next by marshal
> function defined in the camel route.
>
> Question : Can the method called in my "polling consumer" bean return a list
> of objects or should it be defined as void ?
>
You can return whatever you like from the bean, and its output will be
used as payload for the camel message.
from(quartz).beanRef("myBeanThatIsAPollingConsumer").marshal()
> Regards,
>
> Charles Moulliard
> Senior Enterprise Architect
> Apache Camel Committer
>
> *****************************
> blog : http://cmoulliard.blogspot.com
>
--
Claus Ibsen
Apache Camel Committer
Open Source Integration: http://fusesource.com
Blog: http://davsclaus.blogspot.com/
Twitter: http://twitter.com/davsclaus