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

<!--
  - Application context definition for PortletRegistry using Apache OJB.
	-->
<beans>
  
   <!-- ========================= BUSINESS OBJECT DEFINITIONS ========================= -->


	<!--
	  - PortletRegsitry business object: OJB implementation, as an inner bean wrapped
		- by an outer transactional proxy. The two bean definitions could have been separate,
		- but this is cleaner as there is no need to ever access the unwrapped object.
    -->
    <bean id="portletRegistryImpl" class="org.apache.jetspeed.components.portletregistry.PersistenceBrokerPortletRegistry" init-method="init">
    	<constructor-arg>
    		<value>META-INF/registry_repository.xml</value>
    	</constructor-arg>
    </bean>
		
    
	<bean id="org.apache.jetspeed.components.portletregistry.PortletRegistry"
		  name="portletRegistry"
		  parent="baseTransactionProxy" >
		<property name="proxyInterfaces">
			<value>org.apache.jetspeed.components.portletregistry.PortletRegistry</value>
		</property>

		<property name="target"> 
			<ref bean="portletRegistryImpl"/>
		</property>
		<property name="transactionAttributes">
			<props>				
				<prop key="regsister*">PROPAGATION_REQUIRED,-org.apache.jetspeed.components.portletregistry.RegistryException</prop>
				<prop key="remove*">PROPAGATION_REQUIRED,-org.apache.jetspeed.components.portletregistry.RegistryException</prop>
				<prop key="update*">PROPAGATION_REQUIRED,-org.apache.jetspeed.components.portletregistry.RegistryException</prop>
				<prop key="save*">PROPAGATION_REQUIRED,-org.apache.jetspeed.components.portletregistry.RegistryException</prop>
				<prop key="*">PROPAGATION_SUPPORTS</prop>
			</props>
		</property>
	</bean>


</beans>