Mule - 如何获取在出站端点中创建的文件的名称

时间:2014-04-16 10:57:59

标签: file mule filenames mule-el outbound

我有一个Mule应用程序正在出站端点中编写文件,其配置如下:

<file:outbound-endpoint path="${Outbound}" outputPattern="outputFile_#[function:datestamp:yyyyMMddHHmmss].csv" doc:name="Output File"/>

在流程中的这一点之后,我需要在&#34;成功创建文件{filename}&#34;。

的行中显示一条日志消息。

我遇到的问题是我无法找到显示我刚刚创建的文件名称的方法。我可以放Successfully created file outputFile_#[function:datestamp:yyyyMMddHHmmss].csv,但日期戳有可能相差一秒。

我可以在Mule中显示我刚写过的文件的名称吗?

更新

根据@til_b的回复,我使用以下方法实现了这一目标:

<set-variable value="outputFile_#[function:datestamp:yyyyMMddHHmmss].csv" variableName="Filename" doc:name="Variable"/>
<file:outbound-endpoint path="${Outbound}" outputPattern="#[variable:Filename]" doc:name="Output File"/>
<logger level="INFO" message="Successfully created file #[variable:Filename]" doc:name="Logger" />

1 个答案:

答案 0 :(得分:1)

我不知道骡子,但是当我在编程时遇到这样的问题时,我将生成的文件名存储在变量中,然后使用该变量实际创建文件并显示消息。

在伪代码中:

var filename = #yyyymmddhhMMss.csv
create_file(filename)
log_message(filename + ' successfully created')