如何删除Camel中的空目录?

时间:2014-09-04 08:41:17

标签: java directory apache-camel

我已经看到有一个类似的问题here但我无法对此提出评论,因为我没有足够的声誉来提问我。

我遇到了同样的问题,即在从中删除文件后留下一个空目录。我目前有一个bean来检查目录,如果为空则删除它。

from("file://"+inputLocation+"?initialDelay=5000&delay=2000&recursive=true&delete=true")
        .process(databaseProcessor())
.recipientList(simple("file://"+location+"/${in.header."+AppConstants.DIRECTORYLOCATION+"}"))
.to("bean:folderCheck?method=deleteEmptyDirectories()");

bean:folderCheck 有一个方法,如果为空,将删除该目录。据我所知,路由部分的删除将在路由完成后发生,因此目前将 bean:folderCheck 标记为无用。我想在目录为空时找到一种方法来运行它。

是否有办法在此路径或其他路径中调用此bean,而不是定期轮询以查看目录是否为空?

1 个答案:

答案 0 :(得分:2)

完成路线后,您可以在完成时使用它来完成一些工作。

然后你可以从那里调用bean。请记住完成后并行运行(使用另一个线程)。

请注意,从Camel 2.14开始,默认情况下不会以并行模式运行,但您可以轻松再次启用它。