<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE beans PUBLIC '-//SPRING//DTD BEAN//EN' 'http://www.springframework.org/dtd/spring-beans.dtd'>

<beans>

	<import resource="testredirector.xml" />


	<bean id="namespaceDAO" class="org.alfresco.repo.dictionary.NamespaceDAOImpl"></bean>

    <bean id="dictionaryDAO" class="org.alfresco.repo.dictionary.DictionaryDAOImpl">
        <constructor-arg index="0">
            <ref bean="namespaceDAO" />
        </constructor-arg>
    </bean>

    <bean id="dictionaryBootstrap" class="org.alfresco.repo.dictionary.DictionaryBootstrap" init-method="bootstrap">
        <property name="dictionaryDAO"><ref local="dictionaryDAO"/></property>
        <property name="models">
            <list>
                <value>alfresco/model/dictionaryModel.xml</value>
            </list>
        </property>
    </bean>

	<bean id="serviceRegistry" class="org.alfresco.repo.service.ServiceDescriptorRegistry"></bean>

	<bean id="AlfrescoServiceDescriptor" abstract="true"
		class="org.alfresco.repo.service.ServiceDescriptorAdvisorFactory">
		<property name="namespace">
			<value>http://www.alfresco.org/test/serviceregistrytest</value>
		</property>
	</bean>


	<bean id="service1" class="org.springframework.aop.framework.ProxyFactoryBean">
		<property name="proxyInterfaces">
			<value>org.alfresco.repo.service.ServiceDescriptorRegistryTest$TestServiceInterface</value>
		</property>
		<property name="target">
			<ref local="test1Component" />
		</property>
		<property name="interceptorNames">
			<list>
				<idref local="service1_descriptor" />
			</list>
		</property>
	</bean>

	<bean id="service1_descriptor" parent="AlfrescoServiceDescriptor">
		<property name="interface">
			<value>org.alfresco.repo.service.ServiceDescriptorRegistryTest$TestServiceInterface</value>
		</property>
		<property name="description">
			<value>Test Service 1</value>
		</property>
	</bean>


	<bean id="service2" class="org.springframework.aop.framework.ProxyFactoryBean">
		<property name="proxyInterfaces">
			<value>org.alfresco.repo.service.ServiceDescriptorRegistryTest$TestServiceInterface</value>
		</property>
		<property name="target">
			<ref local="test2Component" />
		</property>
		<property name="interceptorNames">
			<list>
				<idref local="service2_descriptor" />
			</list>
		</property>
	</bean>

	<bean id="service2_descriptor" parent="AlfrescoServiceDescriptor">
		<property name="interface">
			<value>org.alfresco.repo.service.ServiceDescriptorRegistryTest$TestServiceInterface</value>
		</property>
		<property name="description">
			<value>Test Service 2</value>
		</property>
	</bean>

	<bean id="service3" class="org.springframework.aop.framework.ProxyFactoryBean">
		<property name="proxyInterfaces">
			<value>org.alfresco.repo.service.ServiceDescriptorRegistryTest$TestServiceInterface, org.alfresco.repo.service.StoreRedirector</value>
		</property>
		<property name="target">
			<ref bean="redirector_service1" />
		</property>
		<property name="interceptorNames">
			<list>
				<idref local="service3_descriptor" />
			</list>
		</property>
	</bean>

	<bean id="service3_descriptor" parent="AlfrescoServiceDescriptor">
		<property name="interface">
			<value>org.alfresco.repo.service.ServiceDescriptorRegistryTest$TestServiceInterface</value>
		</property>
		<property name="description">
			<value>Test Service 3</value>
		</property>
	</bean>


	<bean id="test1Component" class="org.alfresco.repo.service.ServiceDescriptorRegistryTest$Test1Component"></bean>

	<bean id="test2Component" class="org.alfresco.repo.service.ServiceDescriptorRegistryTest$Test2Component"></bean>

</beans>