AVMLockingAwareService.

A wrapper around AVMService which knows aboout locking. It works
by auto-locking on write operations or throwing an AVMLockingException
if the requested target is already locked to another user or to a
different store in a web project.
It is wired up as avmLockingAwareService, AVMLockingAwareService, and
indexingAVMLockingAwareService.  It isn't hooked into anything
else yet.


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@6000 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
Britt Park
2007-06-18 04:19:35 +00:00
parent 0a95689a7e
commit 832c1b599e
5 changed files with 1012 additions and 5 deletions

View File

@@ -747,6 +747,54 @@
</list>
</property>
</bean>
<!-- The AVMLockingAwareService -->
<bean id="avmLockingAwareService" class="org.alfresco.repo.avm.AVMLockingAwareService">
<property name="avmService">
<ref bean="avmService"/>
</property>
<property name="avmLockingService">
<ref bean="avmLockingService"/>
</property>
<property name="authenticationService">
<ref bean="authenticationService"/>
</property>
</bean>
<bean id="AVMLockingAwareService" class="org.springframework.aop.framework.ProxyFactoryBean">
<property name="proxyInterfaces">
<list>
<value>org.alfresco.service.cmr.avm.AVMService</value>
</list>
</property>
<property name="targetName">
<value>avmLockingAwareService</value>
</property>
<property name="interceptorNames">
<list>
<value>avmServiceWriteTxnAdvisor</value>
<value>avmServiceReadTxnAdvisor</value>
<value>avmSnapShotTriggeredIndexingMethodInterceptor</value>
</list>
</property>
</bean>
<bean id="indexingAVMLockingAwareService" class="org.springframework.aop.framework.ProxyFactoryBean">
<property name="proxyInterfaces">
<list>
<value>org.alfresco.service.cmr.avm.AVMService</value>
</list>
</property>
<property name="targetName">
<value>avmLockingAwareService</value>
</property>
<property name="interceptorNames">
<list>
<value>avmSnapShotTriggeredIndexingMethodInterceptor</value>
</list>
</property>
</bean>
<!-- The AVMService -->