Added broadcaster property to channel parser.
This commit is contained in:
@@ -37,6 +37,13 @@ public class ChannelParser implements BeanDefinitionParser {
|
||||
|
||||
private static final String CAPACITY_ATTRIBUTE = "capacity";
|
||||
|
||||
private boolean isBroadcaster;
|
||||
|
||||
|
||||
public ChannelParser(boolean isBroadcaster) {
|
||||
this.isBroadcaster = isBroadcaster;
|
||||
}
|
||||
|
||||
|
||||
public BeanDefinition parse(Element element, ParserContext parserContext) {
|
||||
RootBeanDefinition channelDef = new RootBeanDefinition(SimpleChannel.class);
|
||||
@@ -45,6 +52,9 @@ public class ChannelParser implements BeanDefinitionParser {
|
||||
if (StringUtils.hasText(capacity)) {
|
||||
channelDef.getConstructorArgumentValues().addGenericArgumentValue(Integer.parseInt(capacity));
|
||||
}
|
||||
if (this.isBroadcaster) {
|
||||
channelDef.getPropertyValues().addPropertyValue("broadcaster", Boolean.TRUE);
|
||||
}
|
||||
String beanName = element.getAttribute(ID_ATTRIBUTE);
|
||||
if (!StringUtils.hasText(beanName)) {
|
||||
beanName = parserContext.getReaderContext().generateBeanName(channelDef);
|
||||
|
||||
@@ -32,7 +32,7 @@ public class IntegrationNamespaceHandler extends NamespaceHandlerSupport {
|
||||
public void init() {
|
||||
registerBeanDefinitionParser("message-bus", new MessageBusParser());
|
||||
registerBeanDefinitionParser("annotation-driven", new AnnotationDrivenParser());
|
||||
registerBeanDefinitionParser("channel", new ChannelParser());
|
||||
registerBeanDefinitionParser("channel", new ChannelParser(false));
|
||||
registerBeanDefinitionParser("source-adapter", new ChannelAdapterParser(true));
|
||||
registerBeanDefinitionParser("target-adapter", new ChannelAdapterParser(false));
|
||||
registerBeanDefinitionParser("endpoint", new EndpointParser());
|
||||
|
||||
Reference in New Issue
Block a user