Merged HEAD-BUG-FIX (5.1/Cloud) to HEAD (5.1/Cloud)

99398: Use TransactionalResourceHelper.getList and correct TransactionListenerAdapter


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@99506 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
Alan Davis
2015-03-16 13:37:16 +00:00
parent 10cfe880d5
commit 68759a226f
2 changed files with 8 additions and 19 deletions

View File

@@ -20,7 +20,6 @@
package org.alfresco.filesys.repo;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
@@ -34,9 +33,8 @@ import org.alfresco.repo.policy.JavaBehaviour;
import org.alfresco.repo.policy.PolicyComponent;
import org.alfresco.repo.security.authentication.AuthenticationUtil;
import org.alfresco.repo.security.authentication.AuthenticationUtil.RunAsWork;
import org.alfresco.repo.transaction.AlfrescoTransactionSupport;
import org.alfresco.repo.transaction.RetryingTransactionHelper.RetryingTransactionCallback;
import org.alfresco.repo.transaction.TransactionListenerAdapter;
import org.alfresco.repo.transaction.TransactionalResourceHelper;
import org.alfresco.service.cmr.model.FileFolderService;
import org.alfresco.service.cmr.model.FileFolderServiceType;
import org.alfresco.service.cmr.repository.ChildAssociationRef;
@@ -49,6 +47,7 @@ import org.alfresco.service.namespace.NamespaceService;
import org.alfresco.service.namespace.QName;
import org.alfresco.service.transaction.TransactionService;
import org.alfresco.util.PropertyCheck;
import org.alfresco.util.transaction.TransactionListenerAdapter;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
@@ -447,14 +446,7 @@ public class NodeMonitor extends TransactionListenerAdapter
*/
private void fireNodeEvent(NodeEvent nodeEvent) {
String eventKey = FileSysNodeEvent;
List<NodeEvent> events = AlfrescoTransactionSupport.getResource(eventKey);
if(events == null)
{
events = new ArrayList<NodeEvent>();
AlfrescoTransactionSupport.bindListener( this);
AlfrescoTransactionSupport.bindResource( eventKey, events);
}
List<NodeEvent> events = TransactionalResourceHelper.getList(FileSysNodeEvent);
events.add(nodeEvent);
// Store the event in the transaction until committed, and register the transaction listener
@@ -489,14 +481,11 @@ public class NodeMonitor extends TransactionListenerAdapter
public void afterCommit() {
// Get the node event that was stored in the transaction
List<NodeEvent>events = (List<NodeEvent>) AlfrescoTransactionSupport.getResource( FileSysNodeEvent);
if ( events != null)
List<NodeEvent>events = TransactionalResourceHelper.getList( FileSysNodeEvent);
for(NodeEvent event: events )
{
for(NodeEvent event: events )
{
// Queue the primary event for processing
m_eventQueue.addEvent(event);
}
// Queue the primary event for processing
m_eventQueue.addEvent(event);
}
}