保险丝/骆驼:仅下载一个文件后如何停止

时间:2019-03-11 21:05:44

标签: apache-camel fuse

这里有保险丝/骆驼新手。我正在尝试使手动过程自动化,在该过程中,从FTP主机下载了.done个文件,然后将其重命名为"fileout.txt",最后对该文件执行了AS / 400程序。

但是,托管AS/400程序的部门没有资源来更新其程序。我正在解决的解决方案是让Camel一次下载一个文件,将其另存为"fileout.txt",然后执行JT400程序进行处理。这些步骤单独起作用,但我有一个问题。

亲爱的读者,我能为您祈祷的是“仅下载一个文件后如何停止骆驼? (由于覆盖,附加或下载多个文件在接下来的步骤中不起作用)”。

1 个答案:

答案 0 :(得分:0)

  

仅下载一个文件后如何停止骆驼?

您可以在FTP使用者中设置以下参数

  • maxMessagesPerPoll=1(单次下载的邮件数量限制)
  • delay=500000(增加每次轮询之间的时间间隔,因此您有时间停止路由)

然后,您的ftp路由可以触发到另一条路由的异步消息(也许是wireTap component),以触发controlBus component来按路由ID停止ftp路由。

  

我正在尝试使手动过程自动化,在该过程中,从FTP主机下载了.done个文件,然后将其重命名为fileout.txt,最后对该文件执行了AS / 400程序

除了停止/启动路由外,您还可以尝试pollEnrich component来使用FTP。使用pollEnrich,如果您已经知道目标文件名,则可以在需要时触发一次FTP使用方。