2014-04-16 3 views
1

아웃 바운드 엔드 포인트에서 만든 파일의 이름을 얻는 방법 :뮬 - 아래의 설정으로, 내가 아웃 바운드 엔드 포인트에서 파일을 작성하는 뮬 응용 프로그램이

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

이 시점에 따라 flow "Successfully created file {filename}"행에 따라 로그 메시지를 표시해야합니다.

나는 방금 만든 파일의 이름을 표시하는 방법을 찾을 수 없다는 문제가 있습니다. 나는 넣을 수있다 : Successfully created file outputFile_#[function:datestamp:yyyyMMddHHmmss].csv, 그러나 기회가있다 1s에 의하여 날짜 견본이 다를지도 모른다.

방금 ​​작성한 파일의 이름을 표시 할 수있는 방법이 있습니까?

UPDATE

는 @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

나는 노새에 대해 잘 모릅니다,하지만 난 프로그래밍 동안 이러한 문제가 발생할 때 생성 된 파일 이름을 변수에 저장 한 다음 해당 변수를 사용하여 실제로 파일을 만들고 메시지를 표시하십시오. 의사 코드에서

는 :

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

감사 @til_b,이 방법은 완벽했다. 원래 질문에 Mule에서이 작업을 포함하도록 업데이트했습니다. – danw