1
|
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
<beans xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
3
|
xmlns:jaxws="http://cxf.apache.org/jaxws" xmlns:p="http://www.springframework.org/schema/p"
|
4
|
xmlns:http="http://cxf.apache.org/transports/http/configuration" xmlns="http://www.springframework.org/schema/beans"
|
5
|
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
|
6
|
|
7
|
|
8
|
http://cxf.apache.org/transports/http/configuration http://cxf.apache.org/schemas/configuration/http-conf.xsd
|
9
|
http://cxf.apache.org/jaxws http://cxf.apache.org/schemas/jaxws.xsd">
|
10
|
|
11
|
|
12
|
<bean id="indexDsTemplate"
|
13
|
class="eu.dnetlib.springutils.stringtemplate.StringTemplateFactory"
|
14
|
p:template="classpath:/eu/dnetlib/index/index-ds-template.st"
|
15
|
scope="prototype"/>
|
16
|
|
17
|
<bean id="indexServerDAOMap" class="eu.dnetlib.index.IndexServerDAOMapImpl"
|
18
|
p:indexEnumerator-ref="indexBackendEnumerator"/>
|
19
|
|
20
|
|
21
|
<bean id="modularIndexService" class="eu.dnetlib.index.IndexModularService"
|
22
|
p:notificationHandler-ref="indexNotificationHandler" init-method="start"
|
23
|
destroy-method="stop">
|
24
|
<property name="extraProtocols">
|
25
|
<bean
|
26
|
class="org.springframework.beans.factory.config.MethodInvokingFactoryBean"
|
27
|
p:targetObject-ref="indexBackendEnumerator" p:targetMethod="getAllProtocols"/>
|
28
|
</property>
|
29
|
<property name="serviceProperties">
|
30
|
<bean
|
31
|
class="org.springframework.beans.factory.config.MethodInvokingFactoryBean"
|
32
|
p:targetObject-ref="indexBackendEnumerator" p:targetMethod="getAllServiceProperties"/>
|
33
|
</property>
|
34
|
|
35
|
</bean>
|
36
|
|
37
|
<bean id="indexNotificationHandler"
|
38
|
class="eu.dnetlib.enabling.tools.blackboard.BlackboardServerExecutorNotificationHandler"
|
39
|
p:blackboardExecutor-ref="indexBlackboardExecutor">
|
40
|
</bean>
|
41
|
|
42
|
|
43
|
<bean id="indexBlackboardExecutor"
|
44
|
class="eu.dnetlib.enabling.tools.blackboard.BlackboardServerActionExecutor"
|
45
|
p:blackboardHandler-ref="blackboardHandler"
|
46
|
p:actionType="eu.dnetlib.index.action.IndexAction"
|
47
|
p:incomplete="false">
|
48
|
<property name="actionMap">
|
49
|
<map>
|
50
|
<entry key="CREATE">
|
51
|
<bean class="eu.dnetlib.index.action.CreateIndexAction"
|
52
|
p:indexDsTemplate-ref="indexDsTemplate"/>
|
53
|
</entry>
|
54
|
<entry key="FEED">
|
55
|
<bean class="eu.dnetlib.index.action.FeedIndexAction"
|
56
|
p:jobScheduler-ref="keepAliveResultsetJobScheduler"
|
57
|
p:rsKeepaliveJob-ref="resultsetKeepaliveJob" p:repeatDelay="${service.index.feed.repeatDelay}"/>
|
58
|
</entry>
|
59
|
<entry key="DELETE">
|
60
|
<bean class="eu.dnetlib.index.action.DeleteIndexAction"/>
|
61
|
</entry>
|
62
|
<entry key="DELETE_BY_QUERY">
|
63
|
<bean class="eu.dnetlib.index.action.DeleteByQueryAction"/>
|
64
|
</entry>
|
65
|
<entry key="IDENTIFY">
|
66
|
<bean class="eu.dnetlib.index.action.IdentifyAction"/>
|
67
|
</entry>
|
68
|
</map>
|
69
|
</property>
|
70
|
</bean>
|
71
|
|
72
|
|
73
|
|
74
|
<bean id="indexBackendEnumerator" class="eu.dnetlib.index.IndexBackendEnumerator"/>
|
75
|
|
76
|
|
77
|
<bean id="mdFormatNotificationHandler"
|
78
|
class="eu.dnetlib.index.MdFormatNotificationHandler"
|
79
|
p:topicExpression="UPDATE/MDFormatDSResourceType/*/RESOURCE_PROFILE/BODY/STATUS"/>
|
80
|
|
81
|
<jaxws:endpoint id="modularIndexServiceEndpoint"
|
82
|
implementor="#modularIndexService" implementorClass="eu.dnetlib.rmi.provision.IndexService"
|
83
|
address="/IndexService"/>
|
84
|
|
85
|
</beans>
|