<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xmlns:int="http://www.springframework.org/schema/integration"
	xmlns:int-amqp="http://www.springframework.org/schema/integration/amqp"
	xmlns:rabbit="http://www.springframework.org/schema/rabbit"
	xsi:schemaLocation="http://www.springframework.org/schema/integration/amqp https://www.springframework.org/schema/integration/amqp/spring-integration-amqp.xsd
		http://www.springframework.org/schema/integration https://www.springframework.org/schema/integration/spring-integration.xsd
		http://www.springframework.org/schema/rabbit https://www.springframework.org/schema/rabbit/spring-rabbit.xsd
		http://www.springframework.org/schema/beans https://www.springframework.org/schema/beans/spring-beans.xsd">

	<int-amqp:publish-subscribe-channel id="channel" />

	<rabbit:connection-factory id="rabbitConnectionFactory" host="localhost" />

	<int-amqp:channel id="withEP" extract-payload="true" message-converter="jackson" />

	<int-amqp:channel id="pollableWithEP" extract-payload="true" message-driven="false" message-converter="jackson"
		inbound-header-mapper="mapperIn" outbound-header-mapper="mapperOut" />

	<int-amqp:publish-subscribe-channel id="pubSubWithEP" extract-payload="true" message-converter="jackson" />

	<int:bridge input-channel="withEP" output-channel="out" />

	<int:bridge input-channel="pubSubWithEP" output-channel="out" />

	<int:channel id="out">
		<int:queue />
	</int:channel>

	<bean id="jackson" class="org.springframework.amqp.support.converter.Jackson2JsonMessageConverter" />

	<bean id="mapperIn" class="org.springframework.integration.amqp.support.DefaultAmqpHeaderMapper"
		factory-method="inboundMapper" />

	<bean id="mapperOut" class="org.springframework.integration.amqp.support.DefaultAmqpHeaderMapper"
		factory-method="outboundMapper" />

</beans>
