From e510b43f0e11be112555b65d75651d8cdbdfab16 Mon Sep 17 00:00:00 2001 From: Britt Park Date: Tue, 12 Jun 2007 15:39:17 +0000 Subject: [PATCH] Added onUpdateProperties callback to AVMNodeService. This one callback slows down the AVM by close to 50%. Not good. git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@5921 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- source/java/org/alfresco/repo/avm/AVMNodeService.java | 6 ++++++ .../org/alfresco/repo/content/RoutingContentService.java | 6 ++++-- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/source/java/org/alfresco/repo/avm/AVMNodeService.java b/source/java/org/alfresco/repo/avm/AVMNodeService.java index 312dee08d4..fdedcd2eb8 100644 --- a/source/java/org/alfresco/repo/avm/AVMNodeService.java +++ b/source/java/org/alfresco/repo/avm/AVMNodeService.java @@ -1266,7 +1266,13 @@ public class AVMNodeService extends AbstractNodeServiceImpl implements NodeServi { try { + Map propsBefore = new HashMap(); +// ContentData oldContentData = fAVMService.getContentDataForRead(-1, avmVersionPath.getSecond()); +// propsBefore.put(ContentModel.PROP_CONTENT, oldContentData); fAVMService.setContentData(avmVersionPath.getSecond(), (ContentData)value); + Map propsAfter = new HashMap(); + propsAfter.put(ContentModel.PROP_CONTENT, value); + invokeOnUpdateProperties(nodeRef, propsBefore, propsAfter); } catch (ClassCastException e) { diff --git a/source/java/org/alfresco/repo/content/RoutingContentService.java b/source/java/org/alfresco/repo/content/RoutingContentService.java index 74b890d8af..db7c2d4f7c 100644 --- a/source/java/org/alfresco/repo/content/RoutingContentService.java +++ b/source/java/org/alfresco/repo/content/RoutingContentService.java @@ -32,6 +32,7 @@ import java.util.Set; import org.alfresco.error.AlfrescoRuntimeException; import org.alfresco.i18n.I18NUtil; +import org.alfresco.model.ContentModel; import org.alfresco.repo.avm.AVMNodeConverter; import org.alfresco.repo.content.ContentServicePolicies.OnContentReadPolicy; import org.alfresco.repo.content.ContentServicePolicies.OnContentUpdatePolicy; @@ -551,8 +552,9 @@ public class RoutingContentService implements ContentService // Bypass NodeService for avm stores. if (nodeRef.getStoreRef().getProtocol().equals(StoreRef.PROTOCOL_AVM)) { - Pair versionPath = AVMNodeConverter.ToAVMVersionPath(nodeRef); - avmService.setContentData(versionPath.getSecond(), contentData); + nodeService.setProperty(nodeRef, ContentModel.PROP_CONTENT, contentData); +// Pair versionPath = AVMNodeConverter.ToAVMVersionPath(nodeRef); +// avmService.setContentData(versionPath.getSecond(), contentData); } else {