To add to what Claus said, a good way to go about this without getting
lost in end()s is to do whatever you are doing inside the splitter
within a sub-route, i.e.:
from(...)
.split(body().tokenize("\n")).streaming()
.to("direct:processLine")
.end()
.log("after splitting")
from("direct:processLine")
// do whatever you want to the line
Jakub
On 23/07/15 19:03, Claus Ibsen wrote:
You must be doing some more inside the splitter and you may need 2 x end
On Thu, Jul 23, 2015 at 7:45 PM, Wilson MacGyver <wmacgy...@gmail.com> wrote:
hmm, if I understand you correctly, this isn't working for me.
I have
from()
.split(body().tokenize("\n")).streaming()
.process() /do stuff
.end()
.log("${in.body}")
.to(smtp://)
say if the file has 100 lines, I'd except to see the log once if I
understand what you are saying correctly. but I see the log 100 times.
Thanks,
On Thu, Jul 23, 2015 at 1:24 PM, Claus Ibsen <claus.ib...@gmail.com> wrote:
You can do that after the splitter
<from>
<split>
... inside splitter
</split>
.. split done
<to email> send email here
In Java DSL you can use .end() to end the split block.
On Thu, Jul 23, 2015 at 7:21 PM, Wilson MacGyver <wmacgy...@gmail.com>
wrote:
Hi,
I'm processing a large file. so I use .split and .streaming to process
it a
record at a time.
I would like to send an email alert upon completion of processing the
file.
but I can't figure out where to do that.
I know I can check to see if it's the last exchange using property
"CamelSplitComplete", but it's set to true on the last exchange. So I
still
need to let it finish.
Is there a good way to this?
Thanks,
Mac
--
Omnem crede diem tibi diluxisse supremum.
--
Claus Ibsen
-----------------
http://davsclaus.com @davsclaus
Camel in Action 2nd edition: http://www.manning.com/ibsen2
--
Omnem crede diem tibi diluxisse supremum.