На http://docs.spring.io/spring-xd/docs/1.2.1.RELEASE/reference/html/#reactor-streams документировано, как Reactor Stream реализован в Spring XD. В соответствии с этой документацией я создал собственное приложение:
/src/main/java/mypackage/MyReactorStream.java
:
...
import org.springframework.xd.reactor.Processor;
import reactor.rx.Stream;
public class MyReactorStream implements Processor<SomePOJO, SomePOJO> {
private int intParam;
public void setIntParam(int intParam) { ... }
@Override
public Stream<SomePOJO> process(Stream<SomePOJO> inputStream) { ... }
}
/src/main/resources/config/config.xml
:
<?xml version="1.0" encoding="UTF-8"?>
<beans ...>
<bean id="messageProcessor" class="mypackage.MyReactorStream">
<property name="intParam" value="${intParam}" />
</bean>
<!-- The rest is boilerplate that XD 1.1 RC1 will avoid you having to provide -->
<int:channel id="input" />
<bean name="messageHandler"
class="org.springframework.xd.reactor.BroadcasterMessageHandler">
<constructor-arg ref="messageProcessor" />
</bean>
<int:service-activator input-channel="input"
ref="messageHandler" output-channel="output" />
<int:channel id="output" />
</beans>
Я хочу использовать аннотации @Configuration
и Spring для своего класса Java вместо конфигурации XML. Как это возможно?