Project

General

Profile

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" xmlns:jaxws="http://cxf.apache.org/jaxws"
4
	xmlns:sec="http://cxf.apache.org/configuration/security" xmlns:wsa="http://cxf.apache.org/ws/addressing"
5
	xmlns:p="http://www.springframework.org/schema/p" xmlns:http="http://cxf.apache.org/transports/http/configuration"
6
	xmlns:t="http://dnetlib.eu/springbeans/t" xmlns:template="http://dnetlib.eu/springbeans/template"
7
	xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
8
                            http://cxf.apache.org/ws/addressing http://cxf.apache.org/schemas/ws-addr-conf.xsd
9
                            http://cxf.apache.org/configuration/security http://cxf.apache.org/schemas/configuration/security.xsd
10
                            http://cxf.apache.org/transports/http/configuration http://cxf.apache.org/schemas/configuration/http-conf.xsd
11
                            http://cxf.apache.org/jaxws http://cxf.apache.org/schemas/jaxws.xsd
12
                            http://dnetlib.eu/springbeans/template http://dnetlib.eu/springbeans/template.xsd">
13

    
14
	<!-- common job scheduler. Use SchedulerAccessorBean to add triggers. -->
15
	<bean id="jobScheduler"
16
		class="org.springframework.scheduling.quartz.SchedulerFactoryBean"
17
		destroy-method="destroy">
18
		<property name="jobFactory">
19
			<bean id="jobSchedulerFactory"
20
				class="org.springframework.scheduling.quartz.SpringBeanJobFactory" />
21
		</property>
22
	</bean>
23

    
24
	<!-- service locators: TODO: parameterize via properties -->
25
	<bean id="isLocator" class="eu.dnetlib.enabling.tools.StaticServiceLocator"
26
		p:service-ref="informationService" />
27

    
28
	<bean id="registryLocator" class="eu.dnetlib.enabling.tools.StaticServiceLocator"
29
		p:service-ref="isRegistryService" />
30

    
31
	<bean id="snLocator" class="eu.dnetlib.enabling.tools.StaticServiceLocator"
32
		p:service-ref="isSNService" />
33

    
34
	<bean id="lookupLocator" class="eu.dnetlib.enabling.tools.StaticServiceLocator"
35
		p:service-ref="isLookUpService" />
36

    
37
	<!-- common service resolution chain -->
38
	<bean id="serviceResolver" class="eu.dnetlib.enabling.tools.ServiceResolverChain">
39
		<property name="resolvers">
40
			<list>
41
				<bean id="localServiceResolver" class="eu.dnetlib.enabling.tools.LocalServiceResolverImpl"
42
					p:baseAddress="${transport.soap.baseAddress}" />
43
				<bean id="jaxwsServiceResolver" class="eu.dnetlib.enabling.tools.JaxwsServiceResolverImpl" />
44
			</list>
45
		</property>
46
	</bean>
47

    
48
	<bean id="uuidGenerator" class="eu.dnetlib.enabling.tools.UniqueIdentifierGeneratorImpl" />
49

    
50

    
51

    
52

    
53

    
54
	<!-- beans -->
55
	<bean id="informationService" class="eu.dnetlib.enabling.is.InformationServiceImpl"
56
		init-method="start" destroy-method="stop" p:isStore-ref="isStore"
57
		p:xqueryUtils-ref="xqueryUtils" p:pendingManager-ref="pendingManager"
58
		p:resourceValidator-ref="resourceValidator" p:endpoint-ref="isSNServiceEndpoint"
59
		p:core-ref="isSNServiceCore" p:contentInitializerJob-ref="embeddedContentLoaderJob" />
60
		
61
	<!-- endpoints -->
62
	<jaxws:endpoint id="informationServiceEndpoint" implementor="#informationService"
63
		implementorClass="eu.dnetlib.enabling.is.rmi.InformationService" address="/is" />
64

    
65
	<template:instance name="serviceRegistrationManager"
66
		t:serviceRegistrationManagerClass="eu.dnetlib.enabling.tools.registration.ValidatingServiceRegistrationManagerImpl"
67
		t:name="informationServiceRegistrationManager" t:service="informationService"
68
		t:endpoint="informationServiceEndpoint" t:jobScheduler="jobScheduler" />		
69
		
70
	<!-- service aliases -->
71
	<alias alias="isLookUpService" name="informationService" />
72
	<alias alias="isRegistryService" name="informationService" />
73
	<alias alias="isSNService" name="informationService" />
74

    
75
	<!-- endpoints -->
76
	<jaxws:endpoint id="isLookUpServiceEndpoint"
77
		implementor="#isLookUpService" implementorClass="eu.dnetlib.enabling.is.lookup.rmi.ISLookUpService"
78
		address="/isLookUp" />
79

    
80
	<template:instance name="serviceRegistrationManager"
81
		t:serviceRegistrationManagerClass="eu.dnetlib.enabling.tools.registration.ValidatingServiceRegistrationManagerImpl"
82
		t:name="isLookUpServiceRegistrationManager" t:service="isLookUpService"
83
		t:endpoint="isLookUpServiceEndpoint" t:jobScheduler="jobScheduler" 
84
		t:serviceRegistrator="isLookupServiceRegistrator" />
85
		
86
	<bean id="isLookupServiceRegistrator"
87
		class="eu.dnetlib.enabling.tools.registration.BlackboardServiceRegistrator"
88
		p:registryLocator-ref="registryLocator" p:lookupLocator-ref="lookupLocator"
89
		p:hnmLocator-ref="${services.registration.default.hnmlocator}"
90
		p:eprBuilder-ref="jaxwsEndpointReferenceBuilder" p:snLocator-ref="snLocator">
91
		<property name="serviceNameGen">
92
			<bean class="eu.dnetlib.enabling.tools.registration.StaticServiceNameResolver" p:name="IS_LookUpService"/>
93
		</property>
94
	</bean>		
95

    
96
	<!-- endpoints -->
97
	<jaxws:endpoint id="isRegistryServiceEndpoint"
98
		implementor="#isRegistryService" implementorClass="eu.dnetlib.enabling.is.registry.rmi.ISRegistryService"
99
		address="/isRegistry" />
100

    
101
	<template:instance name="serviceRegistrationManager"
102
		t:serviceRegistrationManagerClass="eu.dnetlib.enabling.tools.registration.ValidatingServiceRegistrationManagerImpl"
103
		t:name="isRegistryServiceRegistrationManager" t:service="isRegistryService"
104
		t:endpoint="isRegistryServiceEndpoint" t:jobScheduler="jobScheduler" 
105
		t:serviceRegistrator="isRegistryServiceRegistrator" />
106
		
107
	<bean id="isRegistryServiceRegistrator"
108
		class="eu.dnetlib.enabling.tools.registration.BlackboardServiceRegistrator"
109
		p:registryLocator-ref="registryLocator" p:lookupLocator-ref="lookupLocator"
110
		p:hnmLocator-ref="${services.registration.default.hnmlocator}"
111
		p:eprBuilder-ref="jaxwsEndpointReferenceBuilder" p:snLocator-ref="snLocator">
112
		<property name="serviceNameGen">
113
			<bean class="eu.dnetlib.enabling.tools.registration.StaticServiceNameResolver" p:name="IS_RegistryService"/>
114
		</property>
115
	</bean>				
116

    
117
	<!-- endpoints -->
118
	<jaxws:endpoint id="isSNServiceEndpoint" implementor="#isSNService"
119
		implementorClass="eu.dnetlib.enabling.is.sn.rmi.ISSNService" address="/isSN" />
120

    
121
	<template:instance name="serviceRegistrationManager"
122
		t:serviceRegistrationManagerClass="eu.dnetlib.enabling.tools.registration.ValidatingServiceRegistrationManagerImpl"
123
		t:name="isSNServiceRegistrationManager" t:service="isSNService"
124
		t:endpoint="isSNServiceEndpoint" t:jobScheduler="jobScheduler"
125
		t:serviceRegistrator="isSNServiceRegistrator" />
126
		
127
	<bean id="isSNServiceRegistrator"
128
		class="eu.dnetlib.enabling.tools.registration.BlackboardServiceRegistrator"
129
		p:registryLocator-ref="registryLocator" p:lookupLocator-ref="lookupLocator"
130
		p:hnmLocator-ref="${services.registration.default.hnmlocator}"
131
		p:eprBuilder-ref="jaxwsEndpointReferenceBuilder" p:snLocator-ref="snLocator">
132
		<property name="serviceNameGen">
133
			<bean class="eu.dnetlib.enabling.tools.registration.StaticServiceNameResolver" p:name="IS_SNService"/>
134
		</property>
135
	</bean>		
136

    
137
</beans>
    (1-1/1)