]> git.argeo.org Git - gpl/argeo-slc.git/blob - modules/server/org.argeo.slc.server.jms/META-INF/spring/jms.xml
Clean up server OSGi
[gpl/argeo-slc.git] / modules / server / org.argeo.slc.server.jms / META-INF / spring / jms.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <beans xmlns="http://www.springframework.org/schema/beans"
3 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
4 xsi:schemaLocation="
5 http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">
6
7 <import resource="classpath:org/argeo/slc/activemq/destinations.xml" />
8
9 <!-- Attachments -->
10
11 <bean id="attachmentStorage.jmsContainer.add" parent="listenerContainer">
12 <property name="destination" ref="slcJms.destination.attachment.add" />
13 <property name="messageListener">
14 <bean class="org.argeo.slc.jms.JmsAttachmentListener">
15 <property name="attachmentsStorage" ref="attachmentsStorage" />
16 </bean>
17 </property>
18 </bean>
19
20 <!-- Events -->
21 <bean id="jmsEventListener" class="org.argeo.slc.jms.JmsSlcEventListener"
22 init-method="init" destroy-method="close">
23 <property name="jmsConnectionFactory">
24 <!--
25 Need its own connection factory in order to set client ids (not
26 possible on pool)
27 -->
28 <bean class="org.apache.activemq.ActiveMQConnectionFactory">
29 <property name="brokerURL">
30 <value>vm://localhost</value>
31 </property>
32 </bean>
33 </property>
34 <property name="eventsDestination" ref="slcJms.destination.events" />
35 <property name="messageConverter" ref="jmsMessageConverter" />
36 </bean>
37
38 <bean id="jmsEventPublisher" class="org.argeo.slc.jms.JmsSlcEventPublisher">
39 <property name="jmsTemplate" ref="jmsTemplate" />
40 <property name="eventsDestination" ref="slcJms.destination.events" />
41 </bean>
42
43 <!-- Agent Service -->
44 <bean id="agentService.jmsContainer.register" parent="listenerContainer">
45 <property name="destination" ref="slcJms.destination.agent.register" />
46 <property name="messageListener">
47 <bean parent="listenerAdapterCastor">
48 <constructor-arg ref="agentService" />
49 <property name="defaultListenerMethod" value="register" />
50 </bean>
51 </property>
52 </bean>
53
54 <bean id="agentService.jmsContainer.unregister" parent="listenerContainer">
55 <property name="destination" ref="slcJms.destination.agent.unregister" />
56 <property name="messageListener">
57 <bean parent="listenerAdapterCastor">
58 <constructor-arg ref="agentService" />
59 <property name="defaultListenerMethod" value="unregister" />
60 </bean>
61 </property>
62 </bean>
63
64 <bean parent="listenerContainer">
65 <property name="destination" ref="slcJms.destination.execution.event" />
66 <property name="messageListener">
67 <bean class="org.argeo.slc.jms.JmsExecutionHandler">
68 <property name="messageConverter" ref="jmsMessageConverter" />
69 <property name="serviceMsgHandler">
70 <bean class="org.argeo.slc.services.ServiceMsgHandler">
71 <property name="slcExecutionService" ref="slcExecutionService" />
72 <property name="testManagerService" ref="testManagerService" />
73 </bean>
74 </property>
75 </bean>
76 </property>
77 </bean>
78
79 <!-- Common -->
80 <bean id="jmsTemplate" class="org.springframework.jms.core.JmsTemplate">
81 <property name="messageConverter" ref="jmsMessageConverter" />
82 <property name="connectionFactory" ref="jmsConnectionFactory" />
83 </bean>
84
85 <!-- Templates -->
86 <bean id="listenerContainer"
87 class="org.springframework.jms.listener.DefaultMessageListenerContainer"
88 abstract="true">
89 <property name="connectionFactory" ref="jmsConnectionFactory" />
90 <!--
91 <property name="transactionManager" ref="jmsTransactionManager" />
92 -->
93 </bean>
94
95 <bean id="listenerAdapterCastor"
96 class="org.springframework.jms.listener.adapter.MessageListenerAdapter"
97 abstract="true">
98 <property name="messageConverter" ref="jmsMessageConverter" />
99 </bean>
100
101 </beans>