Fixed AR-546:

VersionCounterDao is enclosed in non-propagating transactions (via config)
   version_counter row is locked while version number is incremented
   Added tests to ensure failure before fixing


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@2646 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
Derek Hulley
2006-04-11 10:54:09 +00:00
parent d9a5b76e63
commit f870a17a66
7 changed files with 310 additions and 85 deletions

View File

@@ -16,14 +16,12 @@
*/
package org.alfresco.repo.node.index;
import org.alfresco.model.ContentModel;
import org.alfresco.repo.node.NodeServicePolicies;
import org.alfresco.repo.policy.JavaBehaviour;
import org.alfresco.repo.policy.PolicyComponent;
import org.alfresco.repo.search.Indexer;
import org.alfresco.service.cmr.repository.ChildAssociationRef;
import org.alfresco.service.cmr.repository.NodeRef;
import org.alfresco.service.cmr.repository.StoreRef;
import org.alfresco.service.namespace.NamespaceService;
import org.alfresco.service.namespace.QName;
@@ -34,8 +32,7 @@ import org.alfresco.service.namespace.QName;
* @author Derek Hulley
*/
public class NodeIndexer
implements NodeServicePolicies.BeforeCreateStorePolicy,
NodeServicePolicies.OnCreateNodePolicy,
implements NodeServicePolicies.OnCreateNodePolicy,
NodeServicePolicies.OnUpdateNodePolicy,
NodeServicePolicies.OnDeleteNodePolicy,
NodeServicePolicies.OnCreateChildAssociationPolicy,
@@ -67,10 +64,6 @@ public class NodeIndexer
*/
public void init()
{
policyComponent.bindClassBehaviour(
QName.createQName(NamespaceService.ALFRESCO_URI, "beforeCreateStore"),
ContentModel.TYPE_STOREROOT,
new JavaBehaviour(this, "beforeCreateStore"));
policyComponent.bindClassBehaviour(
QName.createQName(NamespaceService.ALFRESCO_URI, "onCreateNode"),
this,
@@ -93,11 +86,6 @@ public class NodeIndexer
new JavaBehaviour(this, "onDeleteChildAssociation"));
}
public void beforeCreateStore(QName nodeTypeQName, StoreRef storeRef)
{
// indexer can perform some cleanup here, if required
}
public void onCreateNode(ChildAssociationRef childAssocRef)
{
indexer.createNode(childAssocRef);