<?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:jaxws="http://cxf.apache.org/jaxws"
	xmlns:sec="http://cxf.apache.org/configuration/security" xmlns:wsa="http://cxf.apache.org/ws/addressing"
	xmlns:p="http://www.springframework.org/schema/p" xmlns:http="http://cxf.apache.org/transports/http/configuration"

	xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
                                    http://cxf.apache.org/ws/addressing http://cxf.apache.org/schemas/ws-addr-conf.xsd
                                    http://cxf.apache.org/configuration/security http://cxf.apache.org/schemas/configuration/security.xsd
                                    http://cxf.apache.org/transports/http/configuration http://cxf.apache.org/schemas/configuration/http-conf.xsd
                            http://cxf.apache.org/jaxws http://cxf.apache.org/schemas/jaxws.xsd">

	<!--
		common job scheduler. Use SchedulerAccessorBean to add triggers.
	-->
	<bean id="jobScheduler"
		class="org.springframework.scheduling.quartz.SchedulerFactoryBean"
		destroy-method="destroy">
		<property name="jobFactory">
			<bean id="jobSchedulerFactory"
				class="org.springframework.scheduling.quartz.SpringBeanJobFactory" />
		</property>
	</bean>

	<!-- service locators: TODO: parameterize via properties -->
	<bean id="storeLocator" class="eu.dnetlib.enabling.tools.StaticServiceLocator"
		p:service-ref="isStoreService" />
	<bean id="registryLocator" class="eu.dnetlib.enabling.tools.StaticServiceLocator"
		p:service-ref="isRegistryService" />
	<bean id="snLocator" class="eu.dnetlib.enabling.tools.StaticServiceLocator"
		p:service-ref="isSNService" />
	<bean id="lookupLocator" class="eu.dnetlib.enabling.tools.StaticServiceLocator"
		p:service-ref="isLookUpService" />
<!--		
	<bean id="msroLocator" class="eu.dnetlib.enabling.tools.StaticServiceLocator"
		p:service-ref="msroService" />
 
	<bean id="anyIndexLocatorDynamic" class="eu.dnetlib.enabling.tools.DynamicServiceLocator"
		p:clazz="eu.dnetlib.data.index.IIndexService" p:lookUpLocator-ref="lookupLocator"
		p:serviceResolver-ref="serviceResolver" />
 -->
	<!-- common service resolution chain -->
	<bean id="serviceResolver" class="eu.dnetlib.enabling.tools.ServiceResolverChain">
		<property name="resolvers">
			<list>
				<bean id="localServiceResolver" class="eu.dnetlib.enabling.tools.LocalServiceResolverImpl"
					p:baseAddress="${transport.soap.baseAddress}" />
				<bean id="jaxwsServiceResolver" class="eu.dnetlib.enabling.tools.JaxwsServiceResolverImpl" />
			</list>
		</property>
	</bean>

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