Проблема с файловым приемником и выражением имени файла

Попытка настроить простой процесс копирования файлов в spring-xd:

 stream create --name mystrea --definition "file --dir=/path/source
--fixedDelay=5 | sink:file --dir=/path/dest --binary=true 
--name=headers['file_name']"

Кажется, это создает и добавляет файлы в заголовок файла ['имя_файла'].out в папке назначения.

Глядя на сток: определение файла

<file:outbound-channel-adapter id="files"
            mode="${mode}"
            charset="${charset}"
            directory="${dir}"
            filename-generator-expression="'${name}' + '${extensionWithDot}'"/>

Я вижу, что он помещает '' вокруг имени, из-за чего оно не оценивается.

Любые предложения, кроме создания нового модуля приемника: простой файл, который будет делать то, что я ищу? Я что-то упускаю


person vladsfl    schedule 11.02.2015    source источник


Ответы (1)


Да, стандартный приемник не предназначен для того, чтобы делать то, что вы пытаетесь сделать (передавать выражение для имени файла).

Мы должны добавить альтернативное свойство --fileNameExpression=... или подобное.

А пока, вы правы, вам понадобится кастомный приемник (или модифицируйте стандартный).

Для этого улучшения я создал JIRA Issue.

person Gary Russell    schedule 12.02.2015