]> git.argeo.org Git - gpl/argeo-slc.git/blob - modules/server/org.argeo.slc.server.jms/META-INF/spring/jms.xml
cd4f23d1fa9342a678e200d92da364df095f3531
[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 <bean
10 class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
11 <property name="systemPropertiesModeName" value="SYSTEM_PROPERTIES_MODE_OVERRIDE" />
12 <property name="locations">
13 <value>osgibundle:jms.properties</value>
14 </property>
15 </bean>
16
17 <!-- Attachments -->
18 <bean id="attachmentStorage.jmsContainer.add" parent="listenerContainer">
19 <property name="destination" ref="slcJms.destination.attachment.add" />
20 <property name="messageListener">
21 <bean class="org.argeo.slc.jms.JmsAttachmentListener">
22 <property name="attachmentsStorage" ref="attachmentsStorage" />
23 </bean>
24 </property>
25 </bean>
26
27 <!-- Events -->
28 <bean id="jmsEventListener" class="org.argeo.slc.jms.JmsSlcEventListener"
29 init-method="init" destroy-method="close">
30 <property name="jmsConnectionFactory">
31 <!--
32 Need its own connection factory in order to set client ids (not
33 possible on pool)
34 -->
35 <bean class="org.apache.activemq.ActiveMQConnectionFactory">
36 <property name="brokerURL">
37 <value>${slc.server.jms.url}</value>
38 <!--<value>vm://localhost</value>
39 --></property>
40 </bean>
41 </property>
42 <property name="eventsDestination" ref="slcJms.destination.events" />
43 <property name="messageConverter" ref="jmsMessageConverter" />
44 </bean>
45
46 <bean id="jmsEventPublisher" class="org.argeo.slc.jms.JmsSlcEventPublisher">
47 <property name="jmsTemplate" ref="jmsTemplate" />
48 <property name="eventsDestination" ref="slcJms.destination.events" />
49 </bean>
50
51 <!-- Agent Service -->
52 <bean id="agentService.jmsContainer.register" parent="listenerContainer">
53 <property name="destination" ref="slcJms.destination.agent.register" />
54 <property name="messageListener">
55 <bean parent="listenerAdapterCastor">
56 <constructor-arg ref="agentService" />
57 <property name="defaultListenerMethod" value="register" />
58 </bean>
59 </property>
60 </bean>
61
62 <bean id="agentService.jmsContainer.unregister" parent="listenerContainer">
63 <property name="destination" ref="slcJms.destination.agent.unregister" />
64 <property name="messageListener">
65 <bean parent="listenerAdapterCastor">
66 <constructor-arg ref="agentService" />
67 <property name="defaultListenerMethod" value="unregister" />
68 </bean>
69 </property>
70 </bean>
71
72 <bean parent="listenerContainer">
73 <property name="destination" ref="slcJms.destination.execution.event" />
74 <property name="messageListener">
75 <bean class="org.argeo.slc.jms.JmsExecutionHandler">
76 <property name="messageConverter" ref="jmsMessageConverter" />
77 <property name="serviceMsgHandler">
78 <bean class="org.argeo.slc.services.ServiceMsgHandler">
79 <property name="slcExecutionService" ref="slcExecutionService" />
80 <property name="testManagerService" ref="testManagerService" />
81 </bean>
82 </property>
83 </bean>
84 </property>
85 </bean>
86
87 <!-- Common -->
88 <bean id="jmsTemplate" class="org.springframework.jms.core.JmsTemplate">
89 <property name="messageConverter" ref="jmsMessageConverter" />
90 <property name="connectionFactory" ref="jmsConnectionFactory" />
91 </bean>
92
93 <!-- Templates -->
94 <bean id="listenerContainer"
95 class="org.springframework.jms.listener.DefaultMessageListenerContainer"
96 abstract="true">
97 <property name="connectionFactory" ref="jmsConnectionFactory" />
98 <!--
99 <property name="transactionManager" ref="jmsTransactionManager" />
100 -->
101 <property name="taskExecutor">
102 <bean class="org.argeo.security.core.SystemAuthenticatedTaskExecutor">
103 <property name="securityService" ref="securityService" />
104 </bean>
105 </property>
106 </bean>
107
108 <bean id="listenerAdapterCastor"
109 class="org.springframework.jms.listener.adapter.MessageListenerAdapter"
110 abstract="true">
111 <property name="messageConverter" ref="jmsMessageConverter" />
112 </bean>
113
114 </beans>