Skip to content

Commit ef668a4

Browse files
committed
feat: SqsOutboundChannelAdapterParser
1 parent 7fa61fa commit ef668a4

File tree

2 files changed

+27
-0
lines changed

2 files changed

+27
-0
lines changed
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
package org.springframework.integration.aws.config.xml;
2+
3+
import org.springframework.beans.factory.support.AbstractBeanDefinition;
4+
import org.springframework.beans.factory.xml.ParserContext;
5+
import org.springframework.integration.aws.outbound.SqsMessageHandler;
6+
import org.springframework.integration.config.xml.AbstractOutboundChannelAdapterParser;
7+
import org.w3c.dom.Element;
8+
9+
public class SqsOutboundChannelAdapterParser extends AbstractOutboundChannelAdapterParser {
10+
11+
@Override
12+
protected AbstractBeanDefinition parseConsumer(Element element, ParserContext parserContext) {
13+
return XmlBeanDefinitionBuilder.newInstance(element, parserContext, SqsMessageHandler.class)
14+
.addConstructorArgReference("sqs")
15+
.setPropertyOrExpressionStringIfAttributeDefined("queue")
16+
.setPropertyOrExpressionStringIfAttributeDefined("delay")
17+
.setPropertyOrExpressionStringIfAttributeDefined("message-group-id")
18+
.setPropertyOrExpressionStringIfAttributeDefined("message-deduplication-id")
19+
.setPropertyOrExpressionStringIfAttributeDefined("send-timeout")
20+
.setPropertyIfAttributeDefined("async")
21+
.setPropertyIfAttributeDefined("queue-not-found-strategy")
22+
.setPropertyIfAttributeDefined("output-channel", "outputChannelName")
23+
.setPropertyReferenceIfAttributeDefined("message-converter")
24+
.build();
25+
}
26+
}

int-aws/src/main/resources/org/springframework/integration/aws/config/xml/element-parser.mapping

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,4 +2,5 @@ kcl-message-driven-channel-adapter: org.springframework.integration.aws.config.x
22
kinesis-message-driven-channel-adapter: org.springframework.integration.aws.config.xml.KinesisMessageDrivenChannelAdapterParser
33
kinesis-outbound-channel-adapter: org.springframework.integration.aws.config.xml.KinesisOutboundChannelAdapterParser
44
kpl-outbound-channel-adapter: org.springframework.integration.aws.config.xml.KplOutboundChannelAdapterParser
5+
sqs-outbound-channel-adapter: org.springframework.integration.aws.config.xml.SqsOutboundChannelAdapterParser
56
sqs-message-driven-channel-adapter: org.springframework.integration.aws.config.xml.SqsMessageDrivenChannelAdapterParser

0 commit comments

Comments
 (0)