Hi Apparently it works with adding .end() after the .to statement (where the unzipped files are to be placed). After that it continues to .to("direct:pingmainframe") only when everything has been unzipped!
from("direct:unzipper") .routeId("_unzipper") .split(new ZipSplitter()).streaming() .to(config.getDataFolderProducerUri("toMF")) .end() .to("direct:pingmainframe"); Med venlig hilsen Claus Paludan · BEC Integrations og serverspecialist · Kompetencer & udvikling Direkte 46 76 37 11 · Mobil 61 56 77 11 E-mail: c...@bec.dk ···················································· BEC a.m.b.a. · CVR-nr. 13 08 88 10 Havsteensvej 4 · 4000 Roskilde www.bec.dk · Reception 46 38 24 00 -----Oprindelig meddelelse----- Fra: Claus Ibsen [mailto:claus.ib...@gmail.com] Sendt: 9. oktober 2017 09:48 Til: users@camel.apache.org Emne: Re: CamelSplitComplete never becomes true Hi Well try at least with a newer version to give it a test there, as I also think we have fixed bugs in that zipfile component. On Mon, Oct 9, 2017 at 9:24 AM, Claus Paludan <claus.palu...@bec.dk> wrote: > Hi > > We are using 2.17.3 and sadly can not just update at this time. > > > > Med venlig hilsen > Claus Paludan · BEC > > Integrations og serverspecialist · Kompetencer & udvikling Direkte 46 > 76 37 11 · Mobil 61 56 77 11 > E-mail: c...@bec.dk > > > ···················································· > BEC a.m.b.a. · CVR-nr. 13 08 88 10 > Havsteensvej 4 · 4000 Roskilde > www.bec.dk · Reception 46 38 24 00 > > > -----Oprindelig meddelelse----- > Fra: Claus Ibsen [mailto:claus.ib...@gmail.com] > Sendt: 9. oktober 2017 09:11 > Til: users@camel.apache.org > Emne: Re: CamelSplitComplete never becomes true > > Hi > > What version of Camel do you use? And have you tried with a newer release. > > On Mon, Oct 9, 2017 at 9:04 AM, Claus Paludan <claus.palu...@bec.dk> wrote: >> Hi >> >> I am trying to determine when the unzip is complete (ie all files have been >> unzipped). Then and only then do I want to go to "direct:pingmainframe". >> The input to this route is a single zip file containing up to many thousand >> small files. If I remove the two choice/when statements every single >> unzipped file will be sent to "direct:pingmainframe" which I do not want. >> Is there a way to make sure I invoke direct:pingmainframe once? >> >> from("direct:unzipper") >> .routeId("_unzipper") >> .split(new ZipSplitter()).streaming() >> .to(config.getDataFolderProducerUri("toMF")) >> .choice() >> .when(simple("${in.header.CamelSplitComplete} == true")) >> .to("direct:pingmainframe"); >> >> >> Med venlig hilsen >> Claus Paludan * BEC >> >> Integrations og serverspecialist * Kompetencer & udvikling Direkte 46 >> 76 37 11 * Mobil 61 56 77 11 >> E-mail: c...@bec.dk >> >> **************************************************** >> BEC a.m.b.a. * CVR-nr. 13 08 88 10 >> Havsteensvej 4 * 4000 Roskilde >> www.bec.dk * Reception 46 38 24 00 >> > > > > -- > Claus Ibsen > ----------------- > http://davsclaus.com @davsclaus > Camel in Action 2: https://www.manning.com/ibsen2 -- Claus Ibsen ----------------- http://davsclaus.com @davsclaus Camel in Action 2: https://www.manning.com/ibsen2